On Fri, Mar 20, 2026 at 6:49 PM Nicholas Piggin <[email protected]> wrote:
> Fix errors in unlock_user() calls: > - unlock_user() with len=1 instead of len=written > - unlock_user() with len=1 instead of len=0 > > Signed-off-by: Nicholas Piggin <[email protected]> > --- > bsd-user/bsd-misc.c | 2 +- > bsd-user/bsd-misc.h | 2 +- > bsd-user/bsdload.c | 2 +- > 3 files changed, 3 insertions(+), 3 deletions(-) > Reviewed-by: Warner Losh <[email protected]> > diff --git a/bsd-user/bsd-misc.c b/bsd-user/bsd-misc.c > index 3e1968718f..eac3edb8ac 100644 > --- a/bsd-user/bsd-misc.c > +++ b/bsd-user/bsd-misc.c > @@ -95,7 +95,7 @@ abi_long host_to_target_semarray(int semid, abi_ulong > target_addr, > for (i = 0; i < nsems; i++) { > __put_user(array[i], host_array + i); > } > - unlock_user(array, target_addr, 1); > + unlock_user(array, target_addr, nsems * sizeof(unsigned short)); > return 0; > } > > diff --git a/bsd-user/bsd-misc.h b/bsd-user/bsd-misc.h > index 13e40d9cde..13abc7e3b1 100644 > --- a/bsd-user/bsd-misc.h > +++ b/bsd-user/bsd-misc.h > @@ -211,7 +211,7 @@ static inline abi_long do_bsd___semctl(int semid, int > semnum, int target_cmd, > break; > } > out: > - unlock_user(target_un, un_ptr, 1); > + unlock_user(target_un, un_ptr, 0); > return ret; > } > > diff --git a/bsd-user/bsdload.c b/bsd-user/bsdload.c > index 5b3c061a45..9ea3b93825 100644 > --- a/bsd-user/bsdload.c > +++ b/bsd-user/bsdload.c > @@ -30,7 +30,7 @@ abi_long memcpy_to_target(abi_ulong dest, const void > *src, > return -TARGET_EFAULT; > } > memcpy(host_ptr, src, len); > - unlock_user(host_ptr, dest, 1); > + unlock_user(host_ptr, dest, len); > return 0; > } > > -- > 2.51.0 > >
