git: ebf7a01594ee - main - libthr: use nitems() for mib length

From: Konstantin Belousov <kib_at_FreeBSD.org>
Date: Fri, 16 Sep 2022 20:25:42 UTC
The branch main has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=ebf7a01594eeb8c2897d1b310069df35da112413

commit ebf7a01594eeb8c2897d1b310069df35da112413
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2022-09-12 20:24:55 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2022-09-16 20:23:59 +0000

    libthr: use nitems() for mib length
    
    Suggested by:   imp
    Reviewed by:    brooks, imp (previous version)
    Discussed with: markj
    Sponsored by:   The FreeBSD Foundation
    MFC after:      2 weeks
    Differential revision:  https://reviews.freebsd.org/D36540
---
 lib/libc/gen/elf_utils.c      | 4 ++--
 lib/libthr/thread/thr_init.c  | 4 ++--
 lib/libthr/thread/thr_stack.c | 5 ++---
 3 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/lib/libc/gen/elf_utils.c b/lib/libc/gen/elf_utils.c
index fbf3bf17082c..ea5cc25f8601 100644
--- a/lib/libc/gen/elf_utils.c
+++ b/lib/libc/gen/elf_utils.c
@@ -28,7 +28,7 @@
  * $FreeBSD$
  */
 
-#include <sys/types.h>
+#include <sys/param.h>
 #include <sys/mman.h>
 #include <sys/resource.h>
 #include <sys/sysctl.h>
@@ -83,7 +83,7 @@ __libc_map_stacks_exec(void)
 	mib[0] = CTL_KERN;
 	mib[1] = KERN_USRSTACK;
 	len = sizeof(usrstack);
-	if (sysctl(mib, sizeof(mib) / sizeof(mib[0]), &usrstack, &len, NULL, 0)
+	if (sysctl(mib, nitems(mib), &usrstack, &len, NULL, 0)
 	    == -1)
 		return;
 	if (getrlimit(RLIMIT_STACK, &rlim) == -1)
diff --git a/lib/libthr/thread/thr_init.c b/lib/libthr/thread/thr_init.c
index 82bde10a153e..0ab051e57994 100644
--- a/lib/libthr/thread/thr_init.c
+++ b/lib/libthr/thread/thr_init.c
@@ -37,7 +37,7 @@
 __FBSDID("$FreeBSD$");
 
 #include "namespace.h"
-#include <sys/types.h>
+#include <sys/param.h>
 #include <sys/signalvar.h>
 #include <sys/ioctl.h>
 #include <sys/link_elf.h>
@@ -466,7 +466,7 @@ init_private(void)
 		mib[0] = CTL_KERN;
 		mib[1] = KERN_USRSTACK;
 		len = sizeof (_usrstack);
-		if (sysctl(mib, 2, &_usrstack, &len, NULL, 0) == -1)
+		if (sysctl(mib, nitems(mib), &_usrstack, &len, NULL, 0) == -1)
 			PANIC("Cannot get kern.usrstack from sysctl");
 		env_bigstack = getenv("LIBPTHREAD_BIGSTACK_MAIN");
 		env_splitstack = getenv("LIBPTHREAD_SPLITSTACK_MAIN");
diff --git a/lib/libthr/thread/thr_stack.c b/lib/libthr/thread/thr_stack.c
index b08bafdd9417..af396fe2ba93 100644
--- a/lib/libthr/thread/thr_stack.c
+++ b/lib/libthr/thread/thr_stack.c
@@ -30,7 +30,7 @@
 #include <sys/cdefs.h>
 __FBSDID("$FreeBSD$");
 
-#include <sys/types.h>
+#include <sys/param.h>
 #include <sys/mman.h>
 #include <sys/queue.h>
 #include <sys/resource.h>
@@ -155,8 +155,7 @@ singlethread_map_stacks_exec(void)
 	mib[0] = CTL_KERN;
 	mib[1] = KERN_USRSTACK;
 	len = sizeof(usrstack);
-	if (sysctl(mib, sizeof(mib) / sizeof(mib[0]), &usrstack, &len, NULL, 0)
-	    == -1)
+	if (sysctl(mib, nitems(mib), &usrstack, &len, NULL, 0) == -1)
 		return;
 	if (getrlimit(RLIMIT_STACK, &rlim) == -1)
 		return;