Antoine Pitrou added the comment:

Ok, what does the following patch do for you:

diff --git a/Lib/test/test_io.py b/Lib/test/test_io.py
--- a/Lib/test/test_io.py
+++ b/Lib/test/test_io.py
@@ -3168,7 +3168,7 @@ class SignalsTest(unittest.TestCase):
         select = support.import_module("select")
         # A quantity that exceeds the buffer size of an anonymous pipe's
         # write end.
-        N = 1024 * 1024
+        N = 1024 * 1024 + 1
         r, w = os.pipe()
         fdopen_kwargs["closefd"] = False
         # We need a separate thread to read from the pipe and allow the
@@ -3191,6 +3191,12 @@ class SignalsTest(unittest.TestCase):
         signal.signal(signal.SIGALRM, alarm1)
         try:
             wio = self.io.open(w, **fdopen_kwargs)
+            if sys.platform.startswith('linux') and fcntl is not None:
+                # Issue #17835: try to limit pipe size using F_SETPIPE_SZ
+                pipe_size = fcntl.fcntl(w, 1031, 4096)
+                if pipe_size >= N:
+                    self.skipTest("can't set pipe size to less than %d bytes: 
%d"
+                                  % (N, pipe_size))
             signal.alarm(1)
             # Expected behaviour:
             # - first raw write() is partial (because of the limited pipe 
buffer

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue17835>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to