Try backing out 54407 to see if it corrects the problems on the Windows
buildbots.  This rev was backported, so we will need to keep both branches
in sync, pending the outcome of the test after this checkin.
diff --git a/Lib/os.py b/Lib/os.py
index 991716e..c8cc274 100644
--- a/Lib/os.py
+++ b/Lib/os.py
@@ -221,7 +221,7 @@
 
 __all__.extend(["makedirs", "removedirs", "renames"])
 
-def walk(top, topdown=True, onerror=None, followlinks=False):
+def walk(top, topdown=True, onerror=None):
     """Directory tree generator.
 
     For each directory in the directory tree rooted at top (including top
@@ -257,10 +257,6 @@
     to abort the walk.  Note that the filename is available as the
     filename attribute of the exception object.
 
-    By default, os.walk does not follow symbolic links to subdirectories on
-    systems that support them.  In order to get this functionality, set the
-    optional argument 'followlinks' to true.
-
     Caution:  if you pass a relative pathname for top, don't change the
     current working directory between resumptions of walk.  walk never
     changes the current directory, and assumes that the client doesn't
@@ -304,8 +300,8 @@
         yield top, dirs, nondirs
     for name in dirs:
         path = join(top, name)
-        if followlinks or not islink(path):
-            for x in walk(path, topdown, onerror, followlinks):
+        if not islink(path):
+            for x in walk(path, topdown, onerror):
                 yield x
     if not topdown:
         yield top, dirs, nondirs