git: 747a47261eee - main - Fix error return of kern.ipc.posix_shm_list, which caused it (and thus "posixshmcontrol ls") to fail for all jails that didn't happen to own the last shm object in the list.

Jamie Gritton jamie at FreeBSD.org
Wed Sep 29 17:23:11 UTC 2021


The branch main has been updated by jamie:

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

commit 747a47261eee59b6e9c437cd2c1b3979df5c32ac
Author:     Jamie Gritton <jamie at FreeBSD.org>
AuthorDate: 2021-09-29 17:20:36 +0000
Commit:     Jamie Gritton <jamie at FreeBSD.org>
CommitDate: 2021-09-29 17:20:36 +0000

    Fix error return of kern.ipc.posix_shm_list, which caused it (and thus
    "posixshmcontrol ls") to fail for all jails that didn't happen to own
    the last shm object in the list.
---
 sys/kern/uipc_shm.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/sys/kern/uipc_shm.c b/sys/kern/uipc_shm.c
index c672c0477b95..63c4250f640f 100644
--- a/sys/kern/uipc_shm.c
+++ b/sys/kern/uipc_shm.c
@@ -2045,8 +2045,10 @@ sysctl_posix_shm_list(SYSCTL_HANDLER_ARGS)
 		LIST_FOREACH(shmm, &shm_dictionary[i], sm_link) {
 			error = shm_fill_kinfo_locked(shmm->sm_shmfd,
 			    &kif, true);
-			if (error == EPERM)
+			if (error == EPERM) {
+				error = 0;
 				continue;
+			}
 			if (error != 0)
 				break;
 			pack_kinfo(&kif);


More information about the dev-commits-src-all mailing list