From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.50]) (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 B07CC3A4523 for ; Thu, 19 Mar 2026 09:41:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.50 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773913292; cv=none; b=UytGdYPUSOLxnHa7U1khlwWHlWfhbz5WNzqX8iTZVkTefRofjdmou63Gp0J5FFAvGuCQRlhphG0kop2S3eP1RlfWRLrZIBzC42JOPsYg/vz8+cQ3V7NlrtGRNTAbzrl+bxZ2fNlgOuwHVA6fci0A/5p1eE/MBy7R5Htuh49i07U= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773913292; c=relaxed/simple; bh=LhklaWhyHGVerBavb8SAMC/3QNbRz6PWvW/OueUI+NQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=Lx85oLANzL4FppJOrgMz/N8Sxer/WEOonaFss9kZR6CflkI3SXigff6Hxn75v23+fvQZEQK8/Z2hKDQ8wynmwEEcVK4z08d1zq7Eni3jhQr6n+7+f6+i5Q6ertCZVV621DG0QzIqhELM+tgIruKMzyWVSvrqmpBknOmUoNYY3N8= 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=by2UMnoD; arc=none smtp.client-ip=209.85.128.50 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="by2UMnoD" Received: by mail-wm1-f50.google.com with SMTP id 5b1f17b1804b1-48538c5956bso6126635e9.0 for ; Thu, 19 Mar 2026 02:41:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1773913289; x=1774518089; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Ukh3T51L3Jc7MHYEIpl0kZizLV8OgFtAugBh40sh11Y=; b=by2UMnoDZW0HZVCxH2UKInzs2oVlJdrAqgvsu0x4w75LswCCo9Ke2mFCIypB8W0jP2 c2RpehT8kW6DvehqzG1mgRKBUIRZLGtflG60O/rFFnxQeY0kK3LzbYKxE17J9UpHy5gG 8ao66LD2iydAcLW5kA7Ye1CA3jdLjvYgrp3WPLlq3wecU/HEMRp4EQXXuk+dT0r1AhrO 7YXpGgeh7tMNcKLm6Nc3nhxAjepR4nd+cdYwkFQFb10ZohAr52ZcQ7l4a8nmmZo1UDX8 i3Z4kfTXXLKU7CSPP5JsomPY5Gh5n9pTr4DcEZrYlAoAipd4xm00yXtp4TGPwOv7x3gU YTlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773913289; x=1774518089; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Ukh3T51L3Jc7MHYEIpl0kZizLV8OgFtAugBh40sh11Y=; b=HiTr8nTSWBfUGgOVDnbC8CU3b6sMVbOyEtEAUFSQV7Y0vlFoNR8oFG6D2aqtrQx/Ni Y3oR3b80htdNObpLln3/XDq1fvgdjxB+q/HE9sIgIrWr0tQPjgrMB5Gn5G3rhvSFeVFb E0A1x4tM0cpRqoisRL3SIZ2f+oxCGfuGTY94LfFRfXnQgANnV7vHipLewjMYwdPfxKzK PRM8x60LFj7Yn7vWNn3DDKiiXv6HP4YccDJOCpARrqiDSMYyE+3IUZv67fpUoJ7bWccp GtIecO9QDOM1S695TBIXH9Oq4xQ5BFiDQNBsAASRL6KML525XVC6YC5Sb9J3D9PXy63n t01A== X-Gm-Message-State: AOJu0YwS4Eh7TrLriEKdygybGqN74T5nZG7hemUJ0ciRiaydDhL/vxmy jr2vRaaFzVl1n71nolsQbQTU4EwWfKdR6CCx7ChAuUF8QtloEzq/79/b X-Gm-Gg: ATEYQzyd8Xa7rKKOvhQjYSBZx+RgrlkQ7lRwQ3Rv4Vr4sk7Jc6PjbLrjO3vZ8RCyrV7 vPRJf1ZeMfLi5ejDFHlP6/0hmgFjjAVjiyV/Ek5y3xjY4KV9hd71K7hle/wr3SGVTXLGnkaMJpn nrkSjoq/2z4MB4Y3InaCfBV2fO4ecIz+QVS/3c5NMcBQSuB5en0YjpDiCs23N2ms2Xsg/P/y6WX +/TNd4zxU0hdtSaADyipTwDYZOXcBwnhN6mIl94d2dYwA7G2/Agl+zqywBltg68EMtfhDibMbX5 3Abyi5idPZB3Y+ymOBR0ilEPe474OeP/K+LPDhPnHMkOEcdJFsDDDqZxutSM6cG4qJilW0xzTBR tO/Bs7ztDyP8UnkFVuXQSU8LiwbcdR7QumpaG2LdVygYRVf+RNoZlnJ1PfEBmMWKdKYhA0TTttO HI9rN/M9PSpikZn0/bibE/Lr9k4HCOeSTVzRJF2V/UlNmmAWRqYILQAcyw77lgtEm+HWCwIj5VU 6qUJn+STtHg X-Received: by 2002:a05:600c:a196:b0:486:fbc4:8fe2 with SMTP id 5b1f17b1804b1-486fbc49126mr12384865e9.15.1773913288698; Thu, 19 Mar 2026 02:41:28 -0700 (PDT) Received: from dohko.chello.ie (188-141-5-72.dynamic.upc.ie. [188.141.5.72]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-486f8c4aa85sm43904385e9.12.2026.03.19.02.41.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 19 Mar 2026 02:41:28 -0700 (PDT) From: David Carlier To: Vincent Donnefort , Steven Rostedt , Mathieu Desnoyers , Masami Hiramatsu , Catalin Marinas , Ryan Roberts Cc: linux-kernel@vger.kernel.org, David Carlier Subject: [PATCH v2] tracing: Fix nr_subbufs initialization in simple_ring_buffer_init_mm() Date: Thu, 19 Mar 2026 09:41:26 +0000 Message-ID: <20260319094126.109691-1-devnexen@gmail.com> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260318171907.19640-1-devnexen@gmail.com> References: <20260318171907.19640-1-devnexen@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit nr_subbufs in the ring buffer metadata is always initialized to zero because it is assigned from cpu_buffer->nr_pages before the page initialization loop has run. While nr_subbufs is not currently read by the kernel, it should reflect the actual buffer geometry in the meta page for correctness. Move the assignment after the page loop so that cpu_buffer->nr_pages holds the final count. Bug discover by Opus AI agent. Fixes: 34e5b958bdad ("tracing: Introduce simple_ring_buffer") Signed-off-by: David Carlier --- kernel/trace/simple_ring_buffer.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/trace/simple_ring_buffer.c b/kernel/trace/simple_ring_buffer.c index 02af2297ae5a..f731f14d0ff7 100644 --- a/kernel/trace/simple_ring_buffer.c +++ b/kernel/trace/simple_ring_buffer.c @@ -395,7 +395,6 @@ int simple_ring_buffer_init_mm(struct simple_rb_per_cpu *cpu_buffer, memset(cpu_buffer->meta, 0, sizeof(*cpu_buffer->meta)); cpu_buffer->meta->meta_page_size = PAGE_SIZE; - cpu_buffer->meta->nr_subbufs = cpu_buffer->nr_pages; /* The reader page is not part of the ring initially */ page = load_page(desc->page_va[0]); @@ -437,6 +436,7 @@ int simple_ring_buffer_init_mm(struct simple_rb_per_cpu *cpu_buffer, return ret; } + cpu_buffer->meta->nr_subbufs = cpu_buffer->nr_pages; /* Close the ring */ bpage->link.next = &cpu_buffer->tail_page->link; cpu_buffer->tail_page->link.prev = &bpage->link; -- 2.53.0