Hi,
After reading the flock(2) code I cannot spot anything preventing it
from being unlocked. This is all made possible by the recent MP-safe
effort including atomic file flags and posix file locks.
I've been running with this for a week by now. However, testing is much
appreciated. Remember to run `make -C sys/kern syscalls' after applying
the diff.
I'm not rushing this one as fcntl(2) was recently unlocked. Will commit
later next week unless I hear objections.
Comments? OK?
Index: kern/syscalls.master
===================================================================
RCS file: /cvs/src/sys/kern/syscalls.master,v
retrieving revision 1.206
diff -u -p -r1.206 syscalls.master
--- kern/syscalls.master 10 Mar 2020 19:20:14 -0000 1.206
+++ kern/syscalls.master 13 Mar 2020 10:13:03 -0000
@@ -260,7 +260,7 @@
128 STD { int sys_rename(const char *from, const char *to); }
129 OBSOL otruncate
130 OBSOL oftruncate
-131 STD { int sys_flock(int fd, int how); }
+131 STD NOLOCK { int sys_flock(int fd, int how); }
132 STD { int sys_mkfifo(const char *path, mode_t mode); }
133 STD NOLOCK { ssize_t sys_sendto(int s, const void *buf, \
size_t len, int flags, const struct sockaddr *to, \