Works around issue3863: freebsd4/5/6 and os2emx are known to have OS bugs when
calling fork() from a child thread.  This disables that unit test (with a note
printed to stderr) on those platforms.

A caveat about buggy platforms is added to the os.fork documentation.
diff --git a/Lib/test/test_threading.py b/Lib/test/test_threading.py
index 4e87437..c8f9cac 100644
--- a/Lib/test/test_threading.py
+++ b/Lib/test/test_threading.py
@@ -380,6 +380,12 @@
         import os
         if not hasattr(os, 'fork'):
             return
+        # Skip platforms with known problems forking from a worker thread.
+        # See http://bugs.python.org/issue3863.
+        if sys.platform in ('freebsd4', 'freebsd5', 'freebsd6', 'os2emx'):
+            print >>sys.stderr, ('Skipping test_3_join_in_forked_from_thread'
+                                 ' due to known OS bugs on'), sys.platform
+            return
         script = """if 1:
             main_thread = threading.current_thread()
             def worker():