lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <iay2bmkotede6c5xkxnfvxwgxg2drmcc6az3eeiijkkz3ftie7@co4cir66ksz2>
Date: Fri, 31 Jan 2025 14:57:40 +0100
From: Joel Granados <joel.granados@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Anna Schumaker <anna.schumaker@...cle.com>, 
	Ashutosh Dixit <ashutosh.dixit@...el.com>, Baoquan He <bhe@...hat.com>, 
	Bill O'Donnell <bodonnel@...hat.com>, Corey Minyard <cminyard@...sta.com>, 
	"Darrick J. Wong" <djwong@...nel.org>, Jani Nikula <jani.nikula@...el.com>, 
	"Martin K. Petersen" <martin.petersen@...cle.com>, Song Liu <song@...nel.org>, Steven Rostedt <rostedt@...dmis.org>, 
	Thomas Gleixner <tglx@...utronix.de>, Wei Liu <wei.liu@...nel.org>, Kees Cook <kees@...nel.org>, 
	linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org, linux-hardening@...r.kernel.org
Subject: Re: Re: [GIT PULL] sysctl constification changes for v6.14-rc1

On Wed, Jan 29, 2025 at 10:48:02AM -0800, Linus Torvalds wrote:
> On Wed, 29 Jan 2025 at 00:14, Joel Granados <joel.granados@...nel.org> wrote:
> >
> >   All ctl_table declared outside of functions and that remain unmodified after
> >   initialization are const qualified.
> 
> Hmm. A quick grep shows
> 
>     static struct ctl_table alignment_tbl[5] = {

Very good catch!

I missed this one because it defines the size of the ctl_table array and
my spatch did not account for that case.

It turns out that the number in the square brackets does not coincide
with the number of elements in the array. I would expect this results in
a failure in the sysctl_check_table function; I dont have a csky system
to test though.

In any case there is an easy untested fix:

>From 431abf6c9c11a8b7321842ed0747b3200d43ef34 Mon Sep 17 00:00:00 2001
From: Joel Granados <joel.granados@...nel.org>
Date: Fri, 31 Jan 2025 14:10:57 +0100
Subject: [PATCH] csky: Remove the size from alignment_tbl declaration

Having to synchronize the number of ctl_table array elements with the
size in the declaration can lead to discrepancies between the two
values. Since commit d7a76ec87195 ("sysctl: Remove check for sentinel
element in ctl_table arrays"), the calculation of the ctl_table array
size is done solely by the ARRAY_SIZE macro removing the need for the
size in the declaration.

Remove the size for the aligment_tbl declaration and const qualify the
array for good measure.

Signed-off-by: Joel Granados <joel.granados@...nel.org>
---
 arch/csky/abiv1/alignment.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/csky/abiv1/alignment.c b/arch/csky/abiv1/alignment.c
index e5b8b4b2109a..aee904833dec 100644
--- a/arch/csky/abiv1/alignment.c
+++ b/arch/csky/abiv1/alignment.c
@@ -300,7 +300,7 @@ void csky_alignment(struct pt_regs *regs)
 	force_sig_fault(SIGBUS, BUS_ADRALN, (void __user *)addr);
 }
 
-static struct ctl_table alignment_tbl[5] = {
+static const struct ctl_table alignment_tbl[] = {
 	{
 		.procname = "kernel_enable",
 		.data = &align_kern_enable,
-- 
2.44.2

I'll queue this up for the next release unless you take it in now.
> 
> in arch/csky/abiv1/alignment.c that didn't get converted.
> 
> And a couple of rdma drivers (iwcm_ctl_table and ucma_ctl_table), but
These two are accounted for. I'll get to them eventually.

> maybe those weren't converted due to being in the "net" address space?
> 
> Anyway, taken as-is, I'm just noting the lacking cases.
> 
>             Linus

-- 

Joel Granados

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ