Hi,
During the regress tests on OpenBSD, test_posix.test_fdlistdir() segfault.
Details:
$ ./python ./Tools/scripts/run_tests.py test_posix
/home/remi/dev/cpython_test/python -W default -bb -E -m test -r -w -j 0 -u all,-largefile,-network,-urlfetch,-audio,-gui test_posix
Using random seed 7449086
[1/1] test_posix
Fatal Python error: Segmentation fault
Current thread 0x0000000209419000:
File "/home/remi/dev/cpython_test/Lib/test/test_posix.py", line 456 in test_fdlistdir
File "/home/remi/dev/cpython_test/Lib/unittest/case.py", line 386 in _executeTestPart
File "/home/remi/dev/cpython_test/Lib/unittest/case.py", line 441 in run
File "/home/remi/dev/cpython_test/Lib/unittest/case.py", line 493 in __call__
File "/home/remi/dev/cpython_test/Lib/unittest/suite.py", line 105 in run
File "/home/remi/dev/cpython_test/Lib/unittest/suite.py", line 67 in __call__
File "/home/remi/dev/cpython_test/Lib/unittest/suite.py", line 105 in run
File "/home/remi/dev/cpython_test/Lib/unittest/suite.py", line 67 in __call__
File "/home/remi/dev/cpython_test/Lib/test/support.py", line 1192 in run
File "/home/remi/dev/cpython_test/Lib/test/support.py", line 1293 in _run_suite
File "/home/remi/dev/cpython_test/Lib/test/support.py", line 1327 in run_unittest
File "/home/remi/dev/cpython_test/Lib/test/test_posix.py", line 1022 in test_main
File "/home/remi/dev/cpython_test/Lib/test/regrtest.py", line 1139 in runtest_inner
File "/home/remi/dev/cpython_test/Lib/test/regrtest.py", line 915 in runtest
File "/home/remi/dev/cpython_test/Lib/test/regrtest.py", line 439 in main
File "/home/remi/dev/cpython_test/Lib/test/regrtest.py", line 1717 in <module>
File "/home/remi/dev/cpython_test/Lib/runpy.py", line 73 in _run_code
File "/home/remi/dev/cpython_test/Lib/runpy.py", line 160 in _run_module_as_main
Traceback (most recent call last):
File "/home/remi/dev/cpython_test/Lib/runpy.py", line 160, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "/home/remi/dev/cpython_test/Lib/runpy.py", line 73, in _run_code
exec(code, run_globals)
File "/home/remi/dev/cpython_test/Lib/test/__main__.py", line 13, in <module>
regrtest.main()
File "/home/remi/dev/cpython_test/Lib/test/regrtest.py", line 683, in main
raise Exception("Child error on {}: {}".format(test, result[1]))
Exception: Child error on test_posix: Exit code -11
[98138 refs]
$ ./python Lib/test/test_posix.py
testNoArgFunctions (__main__.PosixTester) ... ok
test_access (__main__.PosixTester) ... ok
test_chdir (__main__.PosixTester) ... ok
test_chflags (__main__.PosixTester) ... ok
test_chown (__main__.PosixTester) ... ok
test_confstr (__main__.PosixTester) ... ok
test_cpu_set_basic (__main__.PosixTester) ... skipped "don't have sched affinity support"
test_cpu_set_bitwise (__main__.PosixTester) ... skipped "don't have sched affinity support"
test_cpu_set_cmp (__main__.PosixTester) ... skipped "don't have sched affinity support"
test_dup (__main__.PosixTester) ... ok
test_dup2 (__main__.PosixTester) ... ok
test_environ (__main__.PosixTester) ... ok
test_faccessat (__main__.PosixTester) ... ok
test_fchmodat (__main__.PosixTester) ... ok
test_fchown (__main__.PosixTester) ... ok
test_fchownat (__main__.PosixTester) ... ok
test_fdlistdir (__main__.PosixTester) ... zsh: segmentation fault (core dumped) ./python Lib/test/test_posix.py
########
with gdb
########
$ gdb ./python
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "amd64-unknown-openbsd5.0"...
(gdb) run Lib/test/test_posix.py
Starting program: /home/remi/dev/cpython_test/python Lib/test/test_posix.py
testNoArgFunctions (__main__.PosixTester) ... ok
test_access (__main__.PosixTester) ... ok
test_chdir (__main__.PosixTester) ... ok
test_chflags (__main__.PosixTester) ... ok
test_chown (__main__.PosixTester) ... ok
test_confstr (__main__.PosixTester) ... ok
test_cpu_set_basic (__main__.PosixTester) ... skipped "don't have sched affinity support"
test_cpu_set_bitwise (__main__.PosixTester) ... skipped "don't have sched affinity support"
test_cpu_set_cmp (__main__.PosixTester) ... skipped "don't have sched affinity support"
test_dup (__main__.PosixTester) ... ok
test_dup2 (__main__.PosixTester) ... ok
test_environ (__main__.PosixTester) ... ok
test_faccessat (__main__.PosixTester) ... ok
test_fchmodat (__main__.PosixTester) ... ok
test_fchown (__main__.PosixTester) ... ok
test_fchownat (__main__.PosixTester) ... ok
test_fdlistdir (__main__.PosixTester) ...
Program received signal SIGSEGV, Segmentation fault.
[Switching to process 21658, thread 0x20a519000]
_readdir_unlocked (dirp=0xafb0e80, result=0x7f7ffffd7ac0, skipdeleted=1)
at /usr/src/lib/libc/gen/readdir.c:44
44 if (dirp->dd_loc >= dirp->dd_size)
(gdb) bt
#0 _readdir_unlocked (dirp=0xafb0e80, result=0x7f7ffffd7ac0, skipdeleted=1)
at /usr/src/lib/libc/gen/readdir.c:44
#1 0x000000020f160f51 in readdir (dirp=0xafb0e80) at /usr/src/lib/libc/gen/readdir.c:80
#2 0x00000000004af33b in posix_fdlistdir (self=Variable "self" is not available.
) at ./Modules/posixmodule.c:2832
#3 0x00000000004694f4 in PyEval_EvalFrameEx (f=0x20973fc30, throwflag=Variable "throwflag" is not available.
) at Python/ceval.c:4000
#4 0x000000000046a71c in PyEval_EvalFrameEx (f=0x208aa4c30, throwflag=Variable "throwflag" is not available.
) at Python/ceval.c:4088
#5 0x000000000046b954 in PyEval_EvalCodeEx (_co=0x2052c2640, globals=Variable "globals" is not available.
) at Python/ceval.c:3375
#6 0x0000000000467d8b in PyEval_EvalFrameEx (f=0x20e52a830, throwflag=Variable "throwflag" is not available.
) at Python/ceval.c:4098
#7 0x000000000046b954 in PyEval_EvalCodeEx (_co=0x2052c27c0, globals=Variable "globals" is not available.
) at Python/ceval.c:3375
#8 0x000000000051a243 in function_call (func=0x2024054b0, arg=0x20a882600, kw=0x20a8836c8)
at Objects/funcobject.c:629
#9 0x00000000004ec5bf in PyObject_Call (func=0x2024054b0, arg=0x20a882600, kw=0x20a8836c8)
at Objects/abstract.c:2149
#10 0x0000000000465936 in PyEval_EvalFrameEx (f=0x20a884660, throwflag=Variable "throwflag" is not available.
) at Python/ceval.c:4315
#11 0x000000000046b954 in PyEval_EvalCodeEx (_co=0x2052c2ac0, globals=Variable "globals" is not available.
) at Python/ceval.c:3375
#12 0x000000000051a243 in function_call (func=0x202405620, arg=0x20a882588, kw=0x0)
at Objects/funcobject.c:629
#13 0x00000000004ec5bf in PyObject_Call (func=0x202405620, arg=0x20a882588, kw=0x0)
at Objects/abstract.c:2149
#14 0x0000000000506ed9 in method_call (func=0x202405620, arg=0x20a87f7d0, kw=0x0)
at Objects/classobject.c:318
#15 0x00000000004ec5bf in PyObject_Call (func=0x20bf0cba0, arg=0x20a87f7d0, kw=0x0)
at Objects/abstract.c:2149
#16 0x000000000042a7e6 in slot_tp_call (self=Variable "self" is not available.
) at Objects/typeobject.c:5194
#17 0x00000000004ec5bf in PyObject_Call (func=0x20bf25a70, arg=0x20a87f7d0, kw=0x0)
at Objects/abstract.c:2149
#18 0x00000000004614ef in PyEval_EvalFrameEx (f=0x20e52bc30, throwflag=Variable "throwflag" is not available.
) at Python/ceval.c:4220
#19 0x000000000046b954 in PyEval_EvalCodeEx (_co=0x20240e1c0, globals=Variable "globals" is not available.
) at Python/ceval.c:3375
#20 0x000000000051a243 in function_call (func=0x20240dec0, arg=0x20a882498, kw=0x20a883580)
at Objects/funcobject.c:629
#21 0x00000000004ec5bf in PyObject_Call (func=0x20240dec0, arg=0x20a882498, kw=0x20a883580)
at Objects/abstract.c:2149
#22 0x0000000000465936 in PyEval_EvalFrameEx (f=0x20a884260, throwflag=Variable "throwflag" is not available.
) at Python/ceval.c:4315
#23 0x000000000046b954 in PyEval_EvalCodeEx (_co=0x2023f5f40, globals=Variable "globals" is not available.
) at Python/ceval.c:3375
#24 0x000000000051a243 in function_call (func=0x20240dd50, arg=0x20bf0cab0, kw=0x0)
at Objects/funcobject.c:629
#25 0x00000000004ec5bf in PyObject_Call (func=0x20240dd50, arg=0x20bf0cab0, kw=0x0)
at Objects/abstract.c:2149
#26 0x0000000000506ed9 in method_call (func=0x20240dd50, arg=0x20bf25290, kw=0x0)
at Objects/classobject.c:318
#27 0x00000000004ec5bf in PyObject_Call (func=0x20bf0cb28, arg=0x20bf25290, kw=0x0)
at Objects/abstract.c:2149
#28 0x000000000042a7e6 in slot_tp_call (self=Variable "self" is not available.
) at Objects/typeobject.c:5194
#29 0x00000000004ec5bf in PyObject_Call (func=0x20bf25300, arg=0x20bf25290, kw=0x0)
at Objects/abstract.c:2149
#30 0x00000000004614ef in PyEval_EvalFrameEx (f=0x20e52c830, throwflag=Variable "throwflag" is not available.
) at Python/ceval.c:4220
#31 0x000000000046b954 in PyEval_EvalCodeEx (_co=0x20240e1c0, globals=Variable "globals" is not available.
) at Python/ceval.c:3375
#32 0x000000000051a243 in function_call (func=0x20240dec0, arg=0x20bf0c9c0, kw=0x20a883438)
at Objects/funcobject.c:629
#33 0x00000000004ec5bf in PyObject_Call (func=0x20240dec0, arg=0x20bf0c9c0, kw=0x20a883438)
at Objects/abstract.c:2149
#34 0x0000000000465936 in PyEval_EvalFrameEx (f=0x20a884060, throwflag=Variable "throwflag" is not available.
) at Python/ceval.c:4315
#35 0x000000000046b954 in PyEval_EvalCodeEx (_co=0x2023f5f40, globals=Variable "globals" is not available.
) at Python/ceval.c:3375
#36 0x000000000051a243 in function_call (func=0x20240dd50, arg=0x20bf0c948, kw=0x0)
at Objects/funcobject.c:629
#37 0x00000000004ec5bf in PyObject_Call (func=0x20240dd50, arg=0x20bf0c948, kw=0x0)
at Objects/abstract.c:2149
#38 0x0000000000506ed9 in method_call (func=0x20240dd50, arg=0x20bf05fb0, kw=0x0)
---Type <return> to continue, or q <return> to quit---
at Objects/classobject.c:318
#39 0x00000000004ec5bf in PyObject_Call (func=0x2049d8150, arg=0x20bf05fb0, kw=0x0)
at Objects/abstract.c:2149
#40 0x000000000042a7e6 in slot_tp_call (self=Variable "self" is not available.
) at Objects/typeobject.c:5194
#41 0x00000000004ec5bf in PyObject_Call (func=0x20bf05df0, arg=0x20bf05fb0, kw=0x0)
at Objects/abstract.c:2149
#42 0x00000000004614ef in PyEval_EvalFrameEx (f=0x2015e2c30, throwflag=Variable "throwflag" is not available.
) at Python/ceval.c:4220
#43 0x000000000046a71c in PyEval_EvalFrameEx (f=0x20bea9830, throwflag=Variable "throwflag" is not available.
) at Python/ceval.c:4088
#44 0x000000000046a71c in PyEval_EvalFrameEx (f=0x20f636030, throwflag=Variable "throwflag" is not available.
) at Python/ceval.c:4088
#45 0x000000000046b954 in PyEval_EvalCodeEx (_co=0x209f27400, globals=Variable "globals" is not available.
) at Python/ceval.c:3375
#46 0x0000000000467d8b in PyEval_EvalFrameEx (f=0x20afb5c30, throwflag=Variable "throwflag" is not available.
) at Python/ceval.c:4098
#47 0x000000000046a71c in PyEval_EvalFrameEx (f=0x20cde2df0, throwflag=Variable "throwflag" is not available.
) at Python/ceval.c:4088
#48 0x000000000046b954 in PyEval_EvalCodeEx (_co=0x208dc1b80, globals=Variable "globals" is not available.
) at Python/ceval.c:3375
#49 0x000000000046babb in PyEval_EvalCode (co=Variable "co" is not available.
) at Python/ceval.c:770
#50 0x000000000048d3e7 in run_mod (mod=Variable "mod" is not available.
) at Python/pythonrun.c:1793
#51 0x000000000048d4ee in PyRun_FileExFlags (fp=0x20f5dd8e0,
filename=0x209f123b0 "Lib/test/test_posix.py", start=257, globals=0x2073b0580,
locals=0x2073b0580, closeit=1, flags=0x7f7ffffdac50) at Python/pythonrun.c:1750
#52 0x00000000004900bf in PyRun_SimpleFileExFlags (fp=0x20f5dd8e0,
filename=0x209f123b0 "Lib/test/test_posix.py", closeit=1, flags=0x7f7ffffdac50)
at Python/pythonrun.c:1275
#53 0x00000000004a2990 in Py_Main (argc=Variable "argc" is not available.
) at Modules/main.c:299
#54 0x0000000000415cba in main (argc=2, argv=0x7f7ffffdad18) at ./Modules/python.c:59
Don't hesitate to ask if you need more information.
Thanks a lot for your help.
Cheers,
Remi. |