rename fork source file
authorRich Felker <dalias@aerifal.cx>
Wed, 30 Sep 2020 17:24:28 +0000 (13:24 -0400)
committerRich Felker <dalias@aerifal.cx>
Thu, 15 Oct 2020 00:27:12 +0000 (20:27 -0400)
this is in preparation for implementing _Fork from POSIX-future,
factored as a separate commit to improve readability of history.

src/process/_Fork.c [new file with mode: 0644]
src/process/fork.c [deleted file]

diff --git a/src/process/_Fork.c b/src/process/_Fork.c
new file mode 100644 (file)
index 0000000..17fb87a
--- /dev/null
@@ -0,0 +1,44 @@
+#include <unistd.h>
+#include <string.h>
+#include <signal.h>
+#include "syscall.h"
+#include "libc.h"
+#include "lock.h"
+#include "pthread_impl.h"
+
+static void dummy(int x)
+{
+}
+
+weak_alias(dummy, __fork_handler);
+weak_alias(dummy, __aio_atfork);
+
+pid_t fork(void)
+{
+       pid_t ret;
+       sigset_t set;
+       __fork_handler(-1);
+       __block_all_sigs(&set);
+       __aio_atfork(-1);
+       LOCK(__abort_lock);
+#ifdef SYS_fork
+       ret = __syscall(SYS_fork);
+#else
+       ret = __syscall(SYS_clone, SIGCHLD, 0);
+#endif
+       if (!ret) {
+               pthread_t self = __pthread_self();
+               self->tid = __syscall(SYS_gettid);
+               self->robust_list.off = 0;
+               self->robust_list.pending = 0;
+               self->next = self->prev = self;
+               __thread_list_lock = 0;
+               libc.threads_minus_1 = 0;
+               if (libc.need_locks) libc.need_locks = -1;
+       }
+       UNLOCK(__abort_lock);
+       __aio_atfork(!ret);
+       __restore_sigs(&set);
+       __fork_handler(!ret);
+       return __syscall_ret(ret);
+}
diff --git a/src/process/fork.c b/src/process/fork.c
deleted file mode 100644 (file)
index 17fb87a..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-#include <unistd.h>
-#include <string.h>
-#include <signal.h>
-#include "syscall.h"
-#include "libc.h"
-#include "lock.h"
-#include "pthread_impl.h"
-
-static void dummy(int x)
-{
-}
-
-weak_alias(dummy, __fork_handler);
-weak_alias(dummy, __aio_atfork);
-
-pid_t fork(void)
-{
-       pid_t ret;
-       sigset_t set;
-       __fork_handler(-1);
-       __block_all_sigs(&set);
-       __aio_atfork(-1);
-       LOCK(__abort_lock);
-#ifdef SYS_fork
-       ret = __syscall(SYS_fork);
-#else
-       ret = __syscall(SYS_clone, SIGCHLD, 0);
-#endif
-       if (!ret) {
-               pthread_t self = __pthread_self();
-               self->tid = __syscall(SYS_gettid);
-               self->robust_list.off = 0;
-               self->robust_list.pending = 0;
-               self->next = self->prev = self;
-               __thread_list_lock = 0;
-               libc.threads_minus_1 = 0;
-               if (libc.need_locks) libc.need_locks = -1;
-       }
-       UNLOCK(__abort_lock);
-       __aio_atfork(!ret);
-       __restore_sigs(&set);
-       __fork_handler(!ret);
-       return __syscall_ret(ret);
-}