Index | Thread | Search

From:
Alexander Bluhm <alexander.bluhm@gmx.net>
Subject:
Re: Unlock shutdown(2)
To:
Vitaliy Makkoveev <mvs@openbsd.org>
Cc:
tech@openbsd.org
Date:
Mon, 25 Mar 2024 16:26:10 +0100

Download raw body.

Thread
  • Vitaliy Makkoveev:

    Unlock shutdown(2)

    • Alexander Bluhm:

      Unlock shutdown(2)

On Sat, Mar 23, 2024 at 03:49:29PM +0300, Vitaliy Makkoveev wrote:
> For all except tcp(4) cases it is simple socantsendmore() and
> socantrcvmore() calls. tcp_shutdown() also calls tcp_dodisconnect() and
> tcp_output() which are moved from kernel lock long time ago.

OK bluhm@

> Index: sys/kern/syscalls.master
> ===================================================================
> RCS file: /cvs/src/sys/kern/syscalls.master,v
> retrieving revision 1.257
> diff -u -p -r1.257 syscalls.master
> --- sys/kern/syscalls.master	26 Jan 2024 18:24:23 -0000	1.257
> +++ sys/kern/syscalls.master	23 Mar 2024 12:35:14 -0000
> @@ -268,7 +268,7 @@
>  133	STD NOLOCK	{ ssize_t sys_sendto(int s, const void *buf, \
>  			    size_t len, int flags, const struct sockaddr *to, \
>  			    socklen_t tolen); }
> -134	STD		{ int sys_shutdown(int s, int how); }
> +134	STD NOLOCK	{ int sys_shutdown(int s, int how); }
>  135	STD NOLOCK	{ int sys_socketpair(int domain, int type, \
>  			    int protocol, int *rsv); }
>  136	STD		{ int sys_mkdir(const char *path, mode_t mode); }