From nobody Sun Feb 8 00:03:35 2026 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 217C6318EEC for ; Mon, 12 Jan 2026 19:27:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.133.124 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768246028; cv=none; b=WtNDbkfLEtgrJpiJqD3in/1AEmiITRpIriQcK4NnahFuwPXqAg9zHrCLamWnzMr/hvl73oLT9rSs/g5Z0JaknThZp/C7qHYT0fZqZu9/NtnR7K7IB7xdpAShvyMyN93srQnvh1R1VDJ7gh55m7sxkol1jDcRuib4oziCdY+T6+0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768246028; c=relaxed/simple; bh=R7JwleE/Tson4DuHsVL+MShFRymRWsCSXRCJB49Z1g0=; h=From:To:Subject:Date:Message-ID:MIME-Version; b=RT6svXJNuRsPuoIhpDD13eYBBRXhRzw6ZNrHDzIPi3R3u9USfSSe1AE4x6Vdo60K53w+nLo/dJutzmYGX2ZwSAfOpF4vIxrvsF8lBxw3tyr29q+c63W7MFemDuZoPuhiY0RD/8BeFP9QsRrqxyAJ5SglG+MWehUPbKu4bQ5GQq8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=FiJjX6nb; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b=kCLjztxH; arc=none smtp.client-ip=170.10.133.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="FiJjX6nb"; dkim=pass (2048-bit key) header.d=redhat.com header.i=@redhat.com header.b="kCLjztxH" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1768246026; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=DvjD/UNgideSUYT1rmAsSZG3Nca8X070zkLBGlqFUZE=; b=FiJjX6nbaQ8/vZT8Vhd6RlBKfITZKJZeFZI3GNQnYWEOiGw1CaaJd3wcCrDA/MfY+gGcGD Ook6fpMx2N+C6KbR240rNfNJzFd+eh6ZX1GvBVd+ICs1NoJARDrJvZJF45DnlbA7eJR3Oa zGxNQf1quQiyluBY7i3YKugcG4Dqx7U= Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-140-VZZBon23OGmfcYJ3SP8FkA-1; Mon, 12 Jan 2026 14:27:04 -0500 X-MC-Unique: VZZBon23OGmfcYJ3SP8FkA-1 X-Mimecast-MFC-AGG-ID: VZZBon23OGmfcYJ3SP8FkA_1768246024 Received: by mail-wm1-f70.google.com with SMTP id 5b1f17b1804b1-47d3c4468d8so43491845e9.2 for ; Mon, 12 Jan 2026 11:27:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1768246023; x=1768850823; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:from:to:cc:subject:date:message-id:reply-to; bh=DvjD/UNgideSUYT1rmAsSZG3Nca8X070zkLBGlqFUZE=; b=kCLjztxHzKyDH8stHmqPIkJlg35qep1JGivVvC/YxD1egWI3Cxq5uQxc5Q+DNslaLU uzWi17epR93U8mp6iKfXyv7133zmntV73voqAs1I3fYa0uiYJFHEgtOZyd5SeVyi0lnv qnfdbotBUn1ZCSbKYHgxRMgNWqcecTPAN4tkUrQkn9rRCLyPbJtUgH8BXZGNvKIPCj1Y LAQy/jB2k2fF4lvz8ByqthZT4XATEOig4nCzHJ5sLLf86YljWzx7QbdTUAnw/6tLkpDH tCMKlL27NcHaP3T48wN39+v3DlsSysvbOG2n+h6TKU7VZy2a1DEbud/4qHxiwxTas8c/ k8Bw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768246023; x=1768850823; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=DvjD/UNgideSUYT1rmAsSZG3Nca8X070zkLBGlqFUZE=; b=ixSGKV2sOf++fjFSHcAyjTG8jsKg/wOk+spsYCHDA+1mjWsD1YT5jTrXShtREX+4/m r1BkYjQrO0Q4SU8XKkZgLe8W+qHRWqi08j5Gd3YlvT3EdZoNhyRq8ffpcM2zQ7UD0ufV bNv6+/fim3IT2NPBkXLVY6yuUQs0E1DsMRw6xyWUTbmxh0aUY0DdJQBeP3wpwd5MEY5p jQlrK5pfsCdf2mGzWitKSYPixqnVFkOCucAgxNcE5IjUXzClgh8U5V11rSsG76AQHpTO MEzcvAk4ZOZiY0Zk07rcvHi1FlZlASqLsCdWSyJ4REI3/lzfOorRfi6ZycmJM3Oi0Uxf jPdA== X-Forwarded-Encrypted: i=1; AJvYcCUwlhJaIdyxUBWn/b9D3CkDf9PdsmtIUp8rYC69gHr3YyUfpr+6+Ucwc7yozdRyBlIb47nrSS21qKy4j4I=@vger.kernel.org X-Gm-Message-State: AOJu0YxtiilR17ekh+k/bVBoe/12/OJuRf4VbqpwsNlYcNGzdhIQg2cR SOxOgiAhVuYVCXm27YfF6E80t5CBvG0+dd+Gu2qVPW/plAt8pKpFffFvXuQBicuSRFH2PXFe7nk EGTm3IPAwgMfM87iUPB8xcslkA1RNbKEXhiQmj5OlXnI29ky1OUG4fv5VtveuHSnThg== X-Gm-Gg: AY/fxX45cSmUJN/2Tqa91oe4zIsigPscsnqGwG5L6TJhdLtUTv8PUnu5sV8jhgVxo7z 1PubjIsa/cnFE3Djf58nO49VORurCM9RMyHCBszq8cSAl1VLa5C8pziOYio4HGcx/v4DiHl60P7 5uBa8lkH5Ex/8ycIw0BkRtfhWzhg2eNS5Hf08O7Q9TQ41HSp0emHYysQ20gtue+TD8Rgl0AHQmR t6TdkHeiA60R+QbK3GYU43RsNDyno0WaYzZSyBKOAnXHYK14UHD/VpNjJdZq3pm0cjkDmAb5DU1 dSxauK/wRyIAQW563sMXASd2pdcLlaIRDxnUbYGT8AzpjWyLNk3nPhnsDzUsSeTdY9qytHOMCgr ozZMtpk31hjgwnJax2jCXYM/9 X-Received: by 2002:a05:600c:1c28:b0:477:632c:5b91 with SMTP id 5b1f17b1804b1-47d84b1a2e7mr240921995e9.16.1768246023552; Mon, 12 Jan 2026 11:27:03 -0800 (PST) X-Google-Smtp-Source: AGHT+IHt0jLiXlNtdXOUnceerwpsmguRccrH0dPl2CJPtvOxDYVUlY4lHWrFkVDs+bgfSs838J1kSg== X-Received: by 2002:a05:600c:1c28:b0:477:632c:5b91 with SMTP id 5b1f17b1804b1-47d84b1a2e7mr240921815e9.16.1768246023183; Mon, 12 Jan 2026 11:27:03 -0800 (PST) Received: from costa-tp.redhat.com ([2a00:a041:e23c:600:cadf:120:2b7f:a706]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-47ed8ae8a86sm2646465e9.4.2026.01.12.11.27.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 12 Jan 2026 11:27:02 -0800 (PST) From: Costa Shulyupin To: Steven Rostedt , Tomas Glozar , Costa Shulyupin , Wander Lairson Costa , Ivan Pravdin , Tiezhu Yang , linux-trace-kernel@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v2] rtla: Fix parse_cpu_set() bug introduced by strtoi() Date: Mon, 12 Jan 2026 21:26:41 +0200 Message-ID: <20260112192642.212848-2-costa.shul@redhat.com> X-Mailer: git-send-email 2.52.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The patch 'Replace atoi() with a robust strtoi()' introduced a bug in parse_cpu_set(), which relies on partial parsing of the input string. The function parses CPU specifications like '0-3,5' by incrementing a pointer through the string. strtoi() rejects strings with trailing characters, causing parse_cpu_set() to fail on any CPU list with multiple entries. Restore the original use of atoi() in parse_cpu_set(). Fixes: 7e9dfccf8f11 ("rtla: Replace atoi() with a robust strtoi()") Signed-off-by: Costa Shulyupin Reviewed-by: Masami Hiramatsu (Google) --- v2: - Split the patch. --- tools/tracing/rtla/src/utils.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/tools/tracing/rtla/src/utils.c b/tools/tracing/rtla/src/utils.c index 18986a5aed3c..0da3b2470c31 100644 --- a/tools/tracing/rtla/src/utils.c +++ b/tools/tracing/rtla/src/utils.c @@ -128,18 +128,16 @@ int parse_cpu_set(char *cpu_list, cpu_set_t *set) nr_cpus =3D sysconf(_SC_NPROCESSORS_CONF); =20 for (p =3D cpu_list; *p; ) { - if (strtoi(p, &cpu)) - goto err; - if (cpu < 0 || cpu >=3D nr_cpus) + cpu =3D atoi(p); + if (cpu < 0 || (!cpu && *p !=3D '0') || cpu >=3D nr_cpus) goto err; =20 while (isdigit(*p)) p++; if (*p =3D=3D '-') { p++; - if (strtoi(p, &end_cpu)) - goto err; - if (end_cpu < cpu || end_cpu >=3D nr_cpus) + end_cpu =3D atoi(p); + if (end_cpu < cpu || (!end_cpu && *p !=3D '0') || end_cpu >=3D nr_cpus) goto err; while (isdigit(*p)) p++; --=20 2.52.0