
This issue trackerhas been migrated toGitHub, and is currentlyread-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.
Created on2008-08-24 19:29 byajaksu2, last changed2022-04-11 14:56 byadmin. This issue is nowclosed.
| Files | ||||
|---|---|---|---|---|
| File name | Uploaded | Description | Edit | |
| fix_call_tracing_segfault.patch | benjamin.peterson,2008-10-04 20:28 | |||
| Messages (6) | |||
|---|---|---|---|
| msg71853 -(view) | Author: Daniel Diniz (ajaksu2)*![]() | Date: 2008-08-24 19:29 | |
The following code causes a segfault for me:import sys; sys.call_tracing(type,2)Running on:Python 3.0b3+ (py3k:66015, Aug 24 2008, 16:21:19)[GCC 4.1.3 20070929 (prerelease) (Ubuntu 4.1.2-16ubuntu2)] on linux2gdb output:[New Thread -1210857280 (LWP 8823)]python:Objects/typeobject.c:1854: type_new: Assertion `args != ((void*)0) && ((((((PyObject*)(args))->ob_type))->tp_flags & ((1L<<26))) !=0)' failed.Program received signal SIGABRT, Aborted.[Switching to Thread -1210857280 (LWP 8823)]0xffffe410 in __kernel_vsyscall ()(gdb) backtrace#0 0xffffe410 in __kernel_vsyscall ()#1 0xb7d67875 in raise () from /lib/tls/i686/cmov/libc.so.6#2 0xb7d69201 in abort () from /lib/tls/i686/cmov/libc.so.6#3 0xb7d60b6e in __assert_fail () from /lib/tls/i686/cmov/libc.so.6#4 0x0806e802 in type_new (metatype=0x81ba120, args=0x81fbda8,kwds=0x0) atObjects/typeobject.c:1854#5 0x0806bd0e in type_call (type=0x81ba120, args=0x81fbda8, kwds=0x0)atObjects/typeobject.c:636#6 0x08118ec5 in PyObject_Call (func=0x81ba120, arg=0x81fbda8, kw=0x0)atObjects/abstract.c:2181#7 0x080b2ac5 in _PyEval_CallTracing (func=0x81ba120, args=0x81fbda8)atPython/ceval.c:3109#8 0x080e7830 in sys_call_tracing (self=0xb7f073b4, args=0xb7a53bcc) atPython/sysmodule.c:771#9 0x081626b1 in PyCFunction_Call (func=0xb7f081bc, arg=0xb7a53bcc,kw=0x0) atObjects/methodobject.c:81#10 0x080b378f in call_function (pp_stack=0xbf9b6b84, oparg=2) atPython/ceval.c:3403#11 0x080ae8d2 in PyEval_EvalFrameEx (f=0x829bb14, throwflag=0) atPython/ceval.c:2205#12 0x080b1c24 in PyEval_EvalCodeEx (co=0xb7a9b9e8, globals=0xb7f0b5d4,locals=0xb7f0b5d4, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, kwdefs=0x0, closure=0x0) atPython/ceval.c:2840#13 0x080a69cb in PyEval_EvalCode (co=0xb7a9b9e8, globals=0xb7f0b5d4,locals=0xb7f0b5d4) atPython/ceval.c:519#14 0x080df64b in run_mod (mod=0x82a2aa0, filename=0x819e3be "<string>",globals=0xb7f0b5d4, locals=0xb7f0b5d4, flags=0xbf9b6f60, arena=0x82b1060) atPython/pythonrun.c:1560#15 0x080df393 in PyRun_StringFlags (str=0x8203fd8 "import sys;sys.call_tracing(type,2)\n", start=257, globals=0xb7f0b5d4, locals=0xb7f0b5d4, flags=0xbf9b6f60) atPython/pythonrun.c:1494#16 0x080ddd37 in PyRun_SimpleStringFlags (command=0x8203fd8 "importsys; sys.call_tracing(type,2)\n", flags=0xbf9b6f60) atPython/pythonrun.c:1073#17 0x080ef5ca in Py_Main (argc=2, argv=0xb7ede028) atModules/main.c:533#18 0x0805a689 in main (argc=2, argv=0xbf9b80b4) at ./Modules/python.c:57 | |||
| msg71856 -(view) | Author: Christian Heimes (christian.heimes)*![]() | Date: 2008-08-24 19:58 | |
The function call fails much earlier in debug builds. sys_call_tracing()doesn't check the type of the second argument. It must be a tuplebecause it's directly passed to the PyObject_Call() API.Suggestion: Add an explicit type check for PyTupleType thesys_call_tracing() functionCheck 2.6, too | |||
| msg71857 -(view) | Author: Benjamin Peterson (benjamin.peterson)*![]() | Date: 2008-08-24 20:03 | |
Not applicable in 2.6:Traceback (most recent call last): File "<stdin>", line 1, in <module>TypeError: type() takes 1 or 3 arguments | |||
| msg72458 -(view) | Author: Barry A. Warsaw (barry)*![]() | Date: 2008-09-04 02:02 | |
This bug should be fixed for rc2, but it doesn't need to block rc1. | |||
| msg74320 -(view) | Author: Benjamin Peterson (benjamin.peterson)*![]() | Date: 2008-10-04 20:28 | |
Attaching patch. | |||
| msg74887 -(view) | Author: Barry A. Warsaw (barry)*![]() | Date: 2008-10-17 01:30 | |
r66949 | |||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022-04-11 14:56:38 | admin | set | github: 47911 |
| 2008-10-17 01:30:08 | barry | set | status: open -> closed resolution: accepted messages: +msg74887 |
| 2008-10-04 20:28:36 | benjamin.peterson | set | keywords: +needs review,patch files: +fix_call_tracing_segfault.patch messages: +msg74320 |
| 2008-10-02 12:53:44 | barry | set | priority: deferred blocker -> release blocker |
| 2008-09-26 22:17:43 | barry | set | priority: release blocker -> deferred blocker |
| 2008-09-18 05:42:14 | barry | set | priority: deferred blocker -> release blocker |
| 2008-09-04 02:02:53 | barry | set | priority: release blocker -> deferred blocker nosy: +barry messages: +msg72458 |
| 2008-08-24 20:03:10 | benjamin.peterson | set | nosy: +benjamin.peterson messages: +msg71857 versions: - Python 2.6 |
| 2008-08-24 19:58:19 | christian.heimes | set | priority: release blocker nosy: +christian.heimes messages: +msg71856 versions: + Python 2.6 |
| 2008-08-24 19:29:04 | ajaksu2 | create | |