diff --git a/Doc/c-api/init.rst b/Doc/c-api/init.rst
index ca7636b..c12e1c7 100644
--- a/Doc/c-api/init.rst
+++ b/Doc/c-api/init.rst
@@ -564,7 +564,7 @@
 directly rather than through :func:`os.fork` (and returning to or calling
 into Python) may result in a deadlock by one of Python's internal locks
 being held by a thread that is defunct after the fork.
-:c:func:`PyOS_AfterFork` tries to reset the necessary locks, but is not
+:c:func:`PyOS_AfterFork_Child` tries to reset the necessary locks, but is not
 always able to.
 
 
@@ -675,9 +675,9 @@
 
 .. c:function:: void PyEval_ReInitThreads()
 
-   This function is called from :c:func:`PyOS_AfterFork` to ensure that newly
-   created child processes don't hold locks referring to threads which
-   are not running in the child process.
+   This function is called from :c:func:`PyOS_AfterFork_Child` to ensure
+   that newly created child processes don't hold locks referring to threads
+   which are not running in the child process.
 
 
 The following functions use thread-local storage, and are not compatible
diff --git a/Doc/whatsnew/3.7.rst b/Doc/whatsnew/3.7.rst
index 3195d90..761c85f 100644
--- a/Doc/whatsnew/3.7.rst
+++ b/Doc/whatsnew/3.7.rst
@@ -166,6 +166,10 @@
 Added support for :ref:`file descriptors <path_fd>` in :func:`~os.scandir`
 on Unix.  (Contributed by Serhiy Storchaka in :issue:`25996`.)
 
+New function :func:`os.register_at_fork` allows registering Python callbacks
+to be executed on a process fork.  (Contributed by Antoine Pitrou in
+:issue:`16500`.)
+
 unittest.mock
 -------------
 
@@ -243,6 +247,11 @@
 * Added functions :c:func:`PySlice_Unpack` and :c:func:`PySlice_AdjustIndices`.
   (Contributed by Serhiy Storchaka in :issue:`27867`.)
 
+* :c:func:`PyOS_AfterFork` is deprecated in favour of the new functions
+  :c:func:`PyOS_BeforeFork`, :c:func:`PyOS_AfterFork_Parent` and
+  :c:func:`PyOS_AfterFork_Child`.  (Contributed by Antoine Pitrou in
+  :issue:`16500`.)
+
 
 Deprecated
 ==========
diff --git a/Lib/threading.py b/Lib/threading.py
index 929a4b0..0b59464 100644
--- a/Lib/threading.py
+++ b/Lib/threading.py
@@ -1320,8 +1320,8 @@
 
 def _after_fork():
     # This function is called by Python/ceval.c:PyEval_ReInitThreads which
-    # is called from PyOS_AfterFork.  Here we cleanup threading module state
-    # that should not exist after a fork.
+    # is called from PyOS_AfterFork_Child.  Here we cleanup threading module
+    # state that should not exist after a fork.
 
     # Reset _active_limbo_lock, in case we forked while the lock was held
     # by another (non-forked) thread.  http://bugs.python.org/issue874900
diff --git a/Misc/NEWS b/Misc/NEWS
index 0b479e8..6f90175 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -1052,6 +1052,9 @@
 C API
 -----
 
+- bpo-16500: Deprecate PyOS_AfterFork() and add PyOS_BeforeFork(),
+  PyOS_AfterFork_Parent() and PyOS_AfterFork_Child().
+
 - bpo-6532: The type of results of PyThread_start_new_thread() and
   PyThread_get_thread_ident(), and the id parameter of
   PyThreadState_SetAsyncExc() changed from "long" to "unsigned long".
diff --git a/Python/ceval.c b/Python/ceval.c
index 302070b..b114b5b 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -232,10 +232,10 @@
     drop_gil(tstate);
 }
 
-/* This function is called from PyOS_AfterFork to destroy all threads which are
- * not running in the child process, and clear internal locks which might be
- * held by those threads. (This could also be done using pthread_atfork
- * mechanism, at least for the pthreads implementation.) */
+/* This function is called from PyOS_AfterFork_Child to destroy all threads
+ * which are not running in the child process, and clear internal locks
+ * which might be held by those threads.
+ */
 
 void
 PyEval_ReInitThreads(void)
diff --git a/Python/import.c b/Python/import.c
index 17a320b..9a78d6a 100644
--- a/Python/import.c
+++ b/Python/import.c
@@ -194,7 +194,7 @@
     return 1;
 }
 
-/* This function is called from PyOS_AfterFork to ensure that newly
+/* This function is called from PyOS_AfterFork_Child to ensure that newly
    created child processes do not share locks with the parent.
    We now acquire the import lock around fork() calls but on some platforms
    (Solaris 9 and earlier? see isue7242) that still left us with problems. */
diff --git a/Python/pystate.c b/Python/pystate.c
index 064204d..0e62ee9 100644
--- a/Python/pystate.c
+++ b/Python/pystate.c
@@ -800,7 +800,7 @@
     autoInterpreterState = NULL;
 }
 
-/* Reset the TLS key - called by PyOS_AfterFork().
+/* Reset the TLS key - called by PyOS_AfterFork_Child().
  * This should not be necessary, but some - buggy - pthread implementations
  * don't reset TLS upon fork(), see issue #10517.
  */
diff --git a/Python/thread.c b/Python/thread.c
index 8fa978a..ed697ac 100644
--- a/Python/thread.c
+++ b/Python/thread.c
@@ -325,7 +325,7 @@
 }
 
 /* Forget everything not associated with the current thread id.
- * This function is called from PyOS_AfterFork().  It is necessary
+ * This function is called from PyOS_AfterFork_Child().  It is necessary
  * because other thread ids which were in use at the time of the fork
  * may be reused for new threads created in the forked process.
  */
