From nobody Sun May 24 19:33:43 2026 Received: from mail-qv1-f42.google.com (mail-qv1-f42.google.com [209.85.219.42]) (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 576892BFC60 for ; Sat, 23 May 2026 11:45:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.219.42 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779536745; cv=none; b=B3e4iJJ5+c9i6sOkAfNxVtF1D19r0Xe9v4jAdHR5h1jaHxrcVDe3aeAjnZq1D16gfXnAmywLhU8Oz7w+sZge3+vKVeQ9GGckfAIa/QNGGLbAG4AwVxzDEpe4hT7OsGIwXbP97F14/3xQ4hU1Nt4rCPZy+ZmrzwOdLgwZPPk+Ivw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779536745; c=relaxed/simple; bh=++XpE4DxRkMJ6q8Y8KUAHSLoJCNAsNwWWRbIAPuAwMY=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=uPWyl6Pqt6jx3FmWssorEUfJFxXZ5bSQDwMohbuUdxvRryozlxNnZ90BOJmvsUfj1G25/V0S8kwK/VOlGEcCBo6I3W0ky0vJivZZ6c+w1dTKXf4P0dfOHdj7SwFAig6LvZV1Sd+JAFP9y0wORvWvVx/i5YFuPnI4F7l40XmrJ1w= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=l/usszjR; arc=none smtp.client-ip=209.85.219.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="l/usszjR" Received: by mail-qv1-f42.google.com with SMTP id 6a1803df08f44-8b1f2b7f1bcso124118626d6.1 for ; Sat, 23 May 2026 04:45:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779536743; x=1780141543; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=Ge3GaYpNMj6fGc6zdoa/x7aqaB3m75rHwBtx6yYd4/U=; b=l/usszjRJoh6V9TzW+Sp4QnYeOnfTWVJp2czHen0G4MRn+FdMG6Oj+/RYZ0iOQqLqK z/HLMX7SZEHGdNwzEoB5xdKbRGWcGJi9yJOZjkByEr+hEpj1rlLOBod67EbUD7k2GOFF QJg+o0jcCBk7x48AwGbpTCS9cMK9aHPiisz1vTpKaWu8mfLouVdtgFDTqWHgD+1v7DUa WDN3KSJi05mRiAIHdGLqFxqut0Hpclt+W80Whm3Q7lf9KBFh4zyIa/kKxBBAzTFGpFtU j/TqjL2USSgtSAyHM7lSkmKerASMv1VViE/PdhDpJGi6k8Boq+bBNp5VeN6qX1fwuq8B cmmQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779536743; x=1780141543; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Ge3GaYpNMj6fGc6zdoa/x7aqaB3m75rHwBtx6yYd4/U=; b=fCnK4T4/x4nCHYjUxsN3OgjsLR70RhaeQg9/FN+P0gywZXvu4Edy/y18wuvKtAgwPS Axi49IN9B7JF1NihxpS68iJ9AZm8sekIzVlUP4LY3B3csOWDR5UN0p9l5mUhYTw4ZW3+ ra/mIjMjRBg4ziaJNWGHJHiv4uh+lwthplHZ4VL5ga7sxIYKoUW/PzednF6yFmxEuK1A yvbyx+2V4MxP6+ZjgOqhH0CMf2iJTKGkbMyXh1rUV8M68NyYbV5zHQDkIYMK/6BsE27X g8bmsIL3LqV+sAhzW3Z5OP4V8pNbFAIpsX/jaZjN/x5bV9DVzhZtIFs3W07llo33K8dv pq7Q== X-Forwarded-Encrypted: i=1; AFNElJ/fruLw8bf8JRaKu1aeFde9HcqE/czF6RdqRcIIUZ10avU17cyCeVPnTo51SwLsnqaIRYv0i59+xqRH7kk=@vger.kernel.org X-Gm-Message-State: AOJu0YxE5qKAQMQtoFWhBb4V/YOR+OhXfRJ10mWmeG8oPrDzbfdYOhLi cjy/3iIGdIJWYLHlqgcMsYldnegFjRQWfEf7gQQ2QQ2wR7CKoLfpiEFl X-Gm-Gg: Acq92OFnR1PCcwSy54YxvF/CuN5wFRh0qrFxqavtlPhGxnmcZv7yRk2SgJxYL+G1QgU 9KtUhevEXwkM4TD8LhV/hcvKfqiTwUOsPGg4wVb3Lw2V/Bd8Friyl6QajMDi6b5QqhBTHe3tE+G nmK4uhrYf6dqu/W1lQaj+H4VYb+G/pbH8U+DY4m/7lI2jjEeVBLIR2T+aIjYby/rJW3lJl8b9MO 4p8T9iBCfrX5muB/cQUoNv3u+el73RcbweOa2ad1/NO3NAFb5ITcl0+AJABWhJfEK/XnBXpw243 XV6uaRMNsraJxZ7EJ6XZvxC7dvrSnmHScFMcYE3yAu2Cch4jdziVJs+RwDNXAgFak4NEpH28Mx0 aWWUALjRu3tvsdHlzhxuZcboFUADim5PKW9Fg6CjNRW9lRS5KGUAb00dvhHFjnDW2g5aO0Je0q5 yc0sJqhoaS+KzSZEf66jxgMqk7qMOPtfzpznqjvtBZEQeHb/KUpik3M1GgO5kS2Oz6wbAGbxBKp aenqZ1QOIp6xFeCg1qKXI20uUYBfbfdJ3N1k3B5nw== X-Received: by 2002:a05:6214:486:b0:8bd:3440:c024 with SMTP id 6a1803df08f44-8cc6e37fa1emr162893276d6.15.1779536743411; Sat, 23 May 2026 04:45:43 -0700 (PDT) Received: from mobile5 (c-68-48-65-54.hsd1.mi.comcast.net. [68.48.65.54]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-8cc80dcd813sm45294056d6.10.2026.05.23.04.45.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 23 May 2026 04:45:43 -0700 (PDT) From: Mike Bommarito To: Rajneesh Bhardwaj , David E Box Cc: Hans de Goede , Ilpo Jarvinen , platform-driver-x86@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] platform/x86/intel/pmc: rate-limit LTR scale-factor warning Date: Sat, 23 May 2026 07:45:17 -0400 Message-ID: <20260523114517.101305-1-michael.bommarito@gmail.com> X-Mailer: git-send-email 2.53.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" convert_ltr_scale() emits an unconditional pr_warn() whenever an LTR row encoded by hardware has a scale-factor field of 6 or 7 (reserved values per the PCIe LTR ECN). The function is called twice per LTR row (snoop + non-snoop) by pmc_core_ltr_show(), which is invoked on every read of /sys/kernel/debug/pmc_core/ltr_show as well as during certain platform driver activity. On a Meteor Lake laptop with an Intel AX210 Wi-Fi card, this produces 4-12 "Invalid LTR scale factor." lines per second in dmesg, with no context to help identify which PMC IP / row carries the bad value. Switch to pr_warn_once() so the warning still flags the spec violation once per boot, and include the offending scale value in the message. Identifying the originating LTR row would require restructuring the caller's loop to perform the validity check itself; that is left as a separate change. Assisted-by: Claude:claude-opus-4-7 Signed-off-by: Mike Bommarito --- Tested on Framework Laptop 13 (Intel Core Ultra 5 125H, BIOS 3.06) running Linux 7.1-rc4 with this patch applied, across multiple boots over three days. Excerpt from /var/log/kern.log spanning the kernel switch: 2026-05-21T08:05:07 mobile5 kernel: intel_pmc_core: Invalid LTR scale f= actor. 2026-05-21T08:07:07 mobile5 kernel: message repeated 9 times: [ intel_p= mc_core: Invalid LTR scale factor.] 2026-05-21T10:19:58 mobile5 kernel: intel_pmc_core: Invalid LTR scale f= actor 7 (only 0-5 are valid per PCIe spec) The first two lines are stock 7.1-rc4 (10 unrate-limited firings inside a 2-minute window, no scale value in the message). The third line is the patched kernel (single firing per boot, scale value present). drivers/platform/x86/intel/pmc/core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/platform/x86/intel/pmc/core.c b/drivers/platform/x86/i= ntel/pmc/core.c index d91e1ab842d6..e5cb70ba5707 100644 --- a/drivers/platform/x86/intel/pmc/core.c +++ b/drivers/platform/x86/intel/pmc/core.c @@ -623,7 +623,8 @@ static u32 convert_ltr_scale(u32 val) * ---------------------------------------------- */ if (val > 5) { - pr_warn("Invalid LTR scale factor.\n"); + pr_warn_once("Invalid LTR scale factor %u (only 0-5 are valid per PCIe s= pec)\n", + val); return 0; } =20 --=20 2.53.0