[Python-bugs-list] [ python-Bugs-501164 ] 2.2 on linux SEGV sometimes

noreply@sourceforge.net noreply@sourceforge.net
Wed, 16 Jan 2002 08:44:35 -0800


Bugs item #501164, was opened at 2002-01-08 19:20
You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=501164&group_id=5470

Category: Python Interpreter Core
Group: Python 2.2
Status: Open
Resolution: None
Priority: 5
Submitted By: MATSUI Tetsushi (tetsushi)
Assigned to: Nobody/Anonymous (nobody)
Summary: 2.2 on linux SEGV sometimes

Initial Comment:
I am using Python 2.2.
The execution with pure python scripts suddenly stops
after several hours or a few days.  With the latest
core I run gdb, it says:

Program terminated with signal 11, Segmentation fault.

and the head of bt is like this:

#0  0x80afb1e in binary_op1 (v=0x8dc0f54, w=0x8c641bc,
op_slot=4)
    at Objects/abstract.c:340
#1  0x80b2537 in PyNumber_Subtract (v=0x8dc0f54,
w=0x8c641bc)
    at Objects/abstract.c:392
#2  0x8079f27 in eval_frame (f=0x820c1fc) at
Python/ceval.c:988
#3  0x807cd50 in PyEval_EvalCodeEx (co=0x81cf608,
globals=0x81d5214, 
    locals=0x0, args=0x8202fc4, argcount=5,
kws=0x8202fd8, kwcount=0, 
    defs=0x0, defcount=0, closure=0x0) at
Python/ceval.c:2574
#4  0x807f41c in fast_function (func=0x81e4584,
pp_stack=0xbfffe474, n=5, 
    na=5, nk=0) at Python/ceval.c:3150

Thanks,
tetsushi


----------------------------------------------------------------------

>Comment By: MATSUI Tetsushi (tetsushi)
Date: 2002-01-16 08:44

Message:
Logged In: YES 
user_id=421269

I tried to reproduce SEGV.

from alib import *

for i in range(10000,50000):
    n=(i**7-1)/(i-1)
    if isprime(n):
        continue
    print n,MPQS(n).run()

The above script stopped when i was 17359.
It took about 1 day on my PC.

----------------------------------------------------------------------

Comment By: Martin v. Löwis (loewis)
Date: 2002-01-14 14:21

Message:
Logged In: YES 
user_id=21627

I cannot reproduce this:

>>> from alib import *
>>> MPQS(30).run()
starting MPQS
10
{10: 1, 3: 1}>>> MPQS(3000000000000000000000000000000000).run()
starting MPQS
1000000000000000000000000000000000
{1000000000000000000000000000000000L: 1, 3: 1}

Can you please give the *precise* sequence of commands to
make this crash?


----------------------------------------------------------------------

Comment By: MATSUI Tetsushi (tetsushi)
Date: 2002-01-08 23:00

Message:
Logged In: YES 
user_id=421269

OK, I attach the main script.
(Maybe the 1659-th line is the stopping point.)

It consists of many factoring or primality testing functions
and classes, and the stopping point I suspect is in the
class MPQS.  To run the algorithm MPQS(n).run() where n is
about 30 decimal digit composite.

The length of stack trace is 53. The last 3 are like this:
#50 0x8053fcb in Py_Main (argc=5, argv=0xbffff644) at
Modules/main.c:369
#51 0x8053a47 in main (argc=5, argv=0xbffff644) at
Modules/python.c:10
#52 0x4004ca49 in Letext ()

Thanks,
tetsushi.

----------------------------------------------------------------------

Comment By: Guido van Rossum (gvanrossum)
Date: 2002-01-08 20:00

Message:
Logged In: YES 
user_id=6380

Can you attach the script, any input data it needs, and
instructions for running it? Otherwise there's no hope in
debugging this.

Also, how long is the stack? Could it be a stack overflow?

----------------------------------------------------------------------

You can respond by visiting: 
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=501164&group_id=5470