From nobody Thu Apr 9 16:35:15 2026 Received: from mail-dy1-f174.google.com (mail-dy1-f174.google.com [74.125.82.174]) (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 AD6E62F60A7 for ; Sat, 7 Mar 2026 03:19:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.82.174 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772853575; cv=none; b=SWsg2Wk1N/kEuxRgs3Jmts2XGJVnVa+nuZOAIvQpkRsPA68of0OXuVKwWzr2Fsv+hjFL9L8ByrnFPcJeljBuy2DJ/Dm0X8ZT5WfSKWMdJs45rYL6bUdu3XIL+F7CLyT+ZcNKx/76koAH+q/LC8t/Qt7Uif8MAgqbOitNT9nu+44= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772853575; c=relaxed/simple; bh=9lkriiYVUgAJAV2ygYKzZB2R1bi3LRMIzoFL2qTmlco=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=lUkrjQC3XuKuc+RO+t4FK2FQn3yhhQgKVmwrfx+48NrWSPFSatWdhfFAix++buG97TSF1g19nT9BOZuC8eXKngzmu7s5XOQUABXgokoazUWEatVwbyuYcZZM2gVcC+nBF2tEJon8Nu3DuLycOfgd91Vf0RLVjprLoRBuUgL0rbs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=wbinvd.org; spf=pass smtp.mailfrom=wbinvd.org; dkim=pass (2048-bit key) header.d=wbinvd.org header.i=@wbinvd.org header.b=Zx9EZtjV; arc=none smtp.client-ip=74.125.82.174 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=wbinvd.org Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=wbinvd.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=wbinvd.org header.i=@wbinvd.org header.b="Zx9EZtjV" Received: by mail-dy1-f174.google.com with SMTP id 5a478bee46e88-2b4520f6b32so11319883eec.0 for ; Fri, 06 Mar 2026 19:19:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wbinvd.org; s=wbinvd; t=1772853574; x=1773458374; 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=E6h1s9t7Yp+cySizwvrH6v9eju/k8G5b2pZCpKQCBAQ=; b=Zx9EZtjVaLPgFLcQj0eRQ2XclzLMyyWQLeVBiLXp+hMUwnq+y9/7fj0cD3MHeUl8F0 txuoHfl58Sy7q0fzm7+aSKeJkcLCsVUhf4ioleUW66f+6e/mM93ddA/QCAycaEyXmW52 IgAKLAvtFozaQiCwrCXf/sVDEpSnXdLnHborcN5gbvYEtQ/PZnrGgVAhLlxYZr8iu12H 3rRYfpNnfAlIX3X9thvDEqIPOJZ5khewIYQblQJ7QBN8KPTDvVnV6njGmIVf3yYHoJ9d vbqFjzsgTslgcQ/Ah9pWq3jw5e/H4Xdn2iu2iMuPB1BmRSi6TMVHy98O9qRuKN1pMS70 Xfjw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772853574; x=1773458374; 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=E6h1s9t7Yp+cySizwvrH6v9eju/k8G5b2pZCpKQCBAQ=; b=pmA/kSOePKKbCibovSAxVS3ChS4nZZOZF5U4hOCqK1wQ7z1CGNK8/SIrHoNII1Br5E ygSkeZdtaCTMu0XIelo/CnXHs9fqIh2YKpTyDYRdJUAgPfSfFI8aqCddisq/KYzRuJAw uBBICAzdUz/6j2VeLWB7kqp7RJBtdH2Z+vlZ1sge1mP5Vh48MzELIGUumLZRN6gOWfYd H+bOqiiVzCYVdrm6nNj3nKz9KQWqwaRQ1ffL0eCDCY/tXNU0bWC0eIyBmEqQtmlL8bzJ baVkizaW3NqCD79Mqllabw8v/iq+mm83s5Y8jIMDy1j2vA8g/MHaDcr6kKdcC1UCdkj2 dJwA== X-Gm-Message-State: AOJu0Yx4eTzCtwPwVQupAmoqiHf1xDtcNFjajaoU+B5nmv/zIleQgd7d v5bX6ZMvJRzOCuaRdl5iFcgfkAO8LV/WEWam7PQ4Eg+Kb5RcD8K+xqGyw6aBfp+10ZG1hKB4zXD 4zFJ7tKA= X-Gm-Gg: ATEYQzyI3w0unQ7/9vBo+jq16zEGy6xokSrohaikwxGAJljLEvkDiFCxKJQlZIpihWG +nuZJaB4mfWvrGUlvdVptQiKZIza7Bx3akoCtdrD+qiqm5PmQ0JD7Z6P5r1wkq0+MWUbSdQd8iM 1U2g0m4OUIOfwsavg4pdlXIyHVGozk3zRrqf8RYw1qtzYL9YqlAzlo2xfwW55/dQcrsKyfVVI+Z Jx++zOkuiwYIcy6mAJoupVqmGXUumETvbm1d2T7g/2qfnnQF/HrWnWulq1fQJX8Bh9jodzfOT4R eZXe1Jn1ZYJxvQUTOncxoBe7MWKk+WG3SiPcKo0o87QbGxGiBlu/QqyFLy4ker9chAO2uQD6yeX QAhZNWVSL7mUUbvBT3fxX3tXEagPBp19zdb1lSKsp0Sg4Tatb99p+J4W6NUNziMYT+e/mHTM4gB DKXg5DvEhprKE+dM4erYySFtZ9Qw== X-Received: by 2002:a05:7022:4399:b0:128:ce44:be90 with SMTP id a92af1059eb24-128ce44c056mr215530c88.28.1772853573760; Fri, 06 Mar 2026 19:19:33 -0800 (PST) Received: from mozart.vkv.me ([2001:5a8:468b:d015:114e:d080:2a5d:de54]) by smtp.gmail.com with ESMTPSA id a92af1059eb24-128c3d423c1sm2402779c88.1.2026.03.06.19.19.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 06 Mar 2026 19:19:33 -0800 (PST) From: Calvin Owens To: linux-kernel@vger.kernel.org, linux-trace-kernel@vger.kernel.org Cc: Steven Rostedt , Masami Hiramatsu , Mathieu Desnoyers Subject: [PATCH v2] tracing: Fix trace_buf_size= cmdline parameter with sizes >= 2G Date: Fri, 6 Mar 2026 19:19:25 -0800 Message-ID: X-Mailer: git-send-email 2.47.3 In-Reply-To: <20260306213730.566b9511@robin> References: <20260306213730.566b9511@robin> 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" Some of the sizing logic through tracer_alloc_buffers() uses int internally, causing unexpected behavior if the user passes a value that does not fit in an int (on my x86 machine, the result is uselessly tiny buffers). Fix by plumbing the parameter's real type (unsigned long) through to the ring buffer allocation functions, which already use unsigned long. It has always been possible to create larger ring buffers via the sysfs interface: this only affects the cmdline parameter. Fixes: 73c5162aa362 ("tracing: keep ring buffer to minimum size till used") Signed-off-by: Calvin Owens --- Changes in v2: * Leave scratch_size as an int in allocate_trace_buffer(), undo callee changes required after making it unsigned long [Steven] kernel/trace/trace.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index 1e7c032a72d2..ebd996f8710e 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -9350,7 +9350,7 @@ static void setup_trace_scratch(struct trace_array *t= r, } =20 static int -allocate_trace_buffer(struct trace_array *tr, struct array_buffer *buf, in= t size) +allocate_trace_buffer(struct trace_array *tr, struct array_buffer *buf, un= signed long size) { enum ring_buffer_flags rb_flags; struct trace_scratch *tscratch; @@ -9405,7 +9405,7 @@ static void free_trace_buffer(struct array_buffer *bu= f) } } =20 -static int allocate_trace_buffers(struct trace_array *tr, int size) +static int allocate_trace_buffers(struct trace_array *tr, unsigned long si= ze) { int ret; =20 @@ -10769,7 +10769,7 @@ __init static void enable_instances(void) =20 __init static int tracer_alloc_buffers(void) { - int ring_buf_size; + unsigned long ring_buf_size; int ret =3D -ENOMEM; =20 =20 --=20 2.47.3