diff --git a/Lib/logging/config.py b/Lib/logging/config.py
index fdf4397..1438388 100644
--- a/Lib/logging/config.py
+++ b/Lib/logging/config.py
@@ -803,6 +803,8 @@
                             raise
                         except:
                             traceback.print_exc()
+                    if self.server.ready:
+                        self.server.ready.set()
             except socket.error, e:
                 if not isinstance(e.args, tuple):
                     raise
@@ -819,12 +821,13 @@
         allow_reuse_address = 1
 
         def __init__(self, host='localhost', port=DEFAULT_LOGGING_CONFIG_PORT,
-                     handler=None):
+                     handler=None, ready=None):
             ThreadingTCPServer.__init__(self, (host, port), handler)
             logging._acquireLock()
             self.abort = 0
             logging._releaseLock()
             self.timeout = 1
+            self.ready = ready
 
         def serve_until_stopped(self):
             import select
@@ -849,7 +852,8 @@
             self.ready = threading.Event()
 
         def run(self):
-            server = self.rcvr(port=self.port, handler=self.hdlr)
+            server = self.rcvr(port=self.port, handler=self.hdlr,
+                               ready=self.ready)
             self.ready.set()
             global _listener
             logging._acquireLock()
diff --git a/Lib/test/test_logging.py b/Lib/test/test_logging.py
index 77db96a..dcd75ce 100644
--- a/Lib/test/test_logging.py
+++ b/Lib/test/test_logging.py
@@ -1594,7 +1594,6 @@
             logging.config.stopListening()
             t.join(2.0)
 
-    #@unittest.skip("See issue #7857")
     def test_listen_config_10_ok(self):
         with captured_stdout() as output:
             self.setup_via_listener(json.dumps(self.config10))
@@ -1614,7 +1613,6 @@
                 ('ERROR', '4'),
             ], stream=output)
 
-    @unittest.skip("See issue #7857")
     def test_listen_config_1_ok(self):
         with captured_stdout() as output:
             self.setup_via_listener(textwrap.dedent(ConfigFileTest.config1))
