freebsd-src/include
Gleb Smirnoff c62ae124cc rpc: limited multithread support for svc_nl
The rpc(3) itself was not designed with multithreading in mind, but we can
actually achieve some parallelism without modifying the library and the
framework.  This transport will allow to process RPCs in threads, with
some hacks on the application side (documented in code).  We make
reentrable only one method - SVC_REPLY().  Reading and parsing of incoming
calls is still done synchronously.  But the actual processing of the calls
can be offloaded to a thread, and once finished the thread can safely
execute svc_sendreply() and the reply would be sent with the correct xid.

Differential Revision:	https://reviews.freebsd.org/D48569
2025-02-01 01:00:28 -08:00
..
arm arm64 lib32: prepare arm64 headers to redirect to arm 2023-07-25 18:59:26 -05:00
arpa Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
gssapi Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
i386 include/i386: fix release builds 2022-06-13 21:37:34 +01:00
protocols Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
rpc rpc: limited multithread support for svc_nl 2025-02-01 01:00:28 -08:00
rpcsvc Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
ssp ssp: Make ssp.h more self-contained 2024-12-29 17:57:46 +00:00
xlocale Remove residual blank line at start of Makefile 2024-07-15 16:43:39 -06:00
_ctype.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
a.out.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
ar.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
assert.h include: add a userland version of __assert_unreachable 2025-01-12 18:41:37 -06:00
bitstring.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
byteswap.h byteswap.h: Add a glibc/linux compatible byteswap.h 2023-01-20 16:37:39 -07:00
complex.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
cpio.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
ctype.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
db.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
dirent.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
dlfcn.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
elf-hints.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
elf.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
endian.h endian.h: Update comments now that POSIX Issue 8 is POSIX.1-2024 2024-12-30 13:38:39 -07:00
err.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
fmtmsg.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
fnmatch.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
fstab.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
fts.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
ftw.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
getopt.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
glob.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
grp.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
gssapi.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
hesiod.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
iconv.h include: Automated cleanup of cdefs and other formatting 2023-11-26 22:23:59 -07:00
ieeefp.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
ifaddrs.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
inttypes.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
iso646.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
kenv.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
langinfo.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
libgen.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
limits.h libc: Fix getentropy POSIX 2024 conformance issues 2025-01-17 13:23:23 -05:00
link.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
locale.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
Makefile Revert "isp: Fix abort issue introduced by previous commit" 2025-01-08 13:20:09 -05:00
Makefile.depend Update Makefile.depend files 2024-10-14 10:26:17 -07:00
Makefile.inc pkgbase: Move headers and libs out of runtime and utilities 2023-09-12 13:22:21 +01:00
malloc.h Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:23 -06:00
malloc_np.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
memory.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
mk-osreldate.sh Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:55:03 -06:00
monetary.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
mpool.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
mqueue.h include: Automated cleanup of cdefs and other formatting 2023-11-26 22:23:59 -07:00
ndbm.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
netconfig.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
netdb.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
nl_types.h Revert "nl_types.h: explicitly include cdefs.h" 2024-01-24 22:50:49 -05:00
nlist.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
nss.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
nsswitch.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
ossfuzz.h vendor/bc: upgrade to version 7.0.0 2024-08-26 18:27:29 +02:00
paths.h Ensure that soft updates are not enabled by default when using mdmfs(8) 2024-10-03 08:06:28 -07:00
printf.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
proc_service.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
pthread.h libthr: add pthread_sigqueue(3) 2024-04-23 19:51:22 +03:00
pthread_np.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
pwd.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
ranlib.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
readpassphrase.h Remove $FreeBSD$: one-line .c comment pattern 2023-08-16 11:54:29 -06:00
regex.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
res_update.h Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:23 -06:00
resolv.h resolv: Add a required include to resolv.h 2024-01-08 20:52:08 +09:00
runetype.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
sched.h include: Automated cleanup of cdefs and other formatting 2023-11-26 22:23:59 -07:00
search.h Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:23 -06:00
semaphore.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
setjmp.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
signal.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
spawn.h posix_spawn(3): add POSIX_SPAWN_DISABLE_ASLR_NP 2024-03-04 03:00:38 +02:00
stab.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
stdalign.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
stdbool.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
stdckdint.h include: Implement N2867. 2023-09-07 06:40:14 +00:00
stddef.h stddef.h/stdlib.h: Remove unused rune_t 2024-06-02 19:41:22 +01:00
stdio.h fileno(3): set errno when returning -1 2024-11-29 17:25:32 +02:00
stdlib.h include: ssp: fortify <stdlib.h> 2024-07-13 00:16:24 -05:00
stdnoreturn.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
string.h Expose POSIX functions incorporated into C23 2024-12-01 10:34:40 -07:00
stringlist.h include: Automated cleanup of cdefs and other formatting 2023-11-26 22:23:59 -07:00
strings.h include: ssp: round out fortification of current set of headers 2024-07-13 00:16:24 -05:00
sysexits.h sysexits: Tidy deprecated header and manual 2024-05-09 20:50:48 -06:00
tar.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
termios.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
tgmath.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
time.h Expose POSIX functions incorporated into C23 2024-12-01 10:34:40 -07:00
timeconv.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
timers.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
ttyent.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
uchar.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
ulimit.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
unistd.h Add fchroot(2) 2024-11-29 12:10:02 +00:00
utime.h include: Remove ancient SCCS tags. 2023-11-26 22:23:28 -07:00
utmpx.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
uuid.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
varargs.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
wchar.h include: ssp: fortify <wchar.h> 2024-07-13 00:16:25 -05:00
wctype.h Remove $FreeBSD$: one-line .h pattern 2023-08-16 11:54:23 -06:00
wordexp.h Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:16 -06:00
xlocale.h Remove "All Rights Reserved" from FreeBSD Foundation copyrights 2024-07-30 12:16:36 -04:00