[NumPy-Tickets] [NumPy] #1588: numpy.ndarray.clip segfaults on big-endian dtype

NumPy Trac numpy-tickets@scipy....
Mon May 7 21:00:08 CDT 2012


#1588: numpy.ndarray.clip segfaults on big-endian dtype
------------------------+---------------------------------------------------
 Reporter:  bdkern      |       Owner:  somebody
     Type:  defect      |      Status:  new     
 Priority:  normal      |   Milestone:  2.0.0   
Component:  numpy.core  |     Version:  1.6.1   
 Keywords:              |  
------------------------+---------------------------------------------------
Changes (by rainwoodman):

  * version:  1.3.0 => 1.6.1


Comment:

 I am confirming this is still and issue with 1.6.1 with IPython, on python
 2.7.3

 won't seg fault:
   .clip(min=0, max=1), with ipython
   .clip(min=0), with python  (I believe there may still be corrupted data)
 will seg fault:
   .clip(min=0), with ipython.

 I made a gdb attaching to the ipython process and obtained a backtrace:

 0x00002aaab026d5df in _update_descr_and_dimensions
 (subtype=0x2aaab050d040, descr=0x64, nd=2, dims=0x7fffea80d410,
 strides=0x0, data=0x12c98ea0,
     flags=1287, obj=0x12c9d2e0) at numpy/core/src/multiarray/ctors.c:265
 265         Py_INCREF(*des);
 (gdb) bt
 #0  0x00002aaab026d5df in _update_descr_and_dimensions
 (subtype=0x2aaab050d040, descr=0x64, nd=2, dims=0x7fffea80d410,
 strides=0x0, data=0x12c98ea0,
     flags=1287, obj=0x12c9d2e0) at numpy/core/src/multiarray/ctors.c:265
 #1  PyArray_NewFromDescr (subtype=0x2aaab050d040, descr=0x64, nd=2,
 dims=0x7fffea80d410, strides=0x0, data=0x12c98ea0, flags=1287,
 obj=0x12c9d2e0)
     at numpy/core/src/multiarray/ctors.c:961
 #2  0x00002aaab02a999d in PyArray_Newshape (self=0x12c9d2e0,
 newdims=<value optimized out>, order=NPY_CORDER) at
 numpy/core/src/multiarray/shape.c:301
 #3  0x00002aaab02af2d4 in PyArray_Ravel (a=0x0, order=NPY_CORDER) at
 numpy/core/src/multiarray/shape.c:845
 #4  0x00002aaab02af4b9 in array_ravel (self=0x12c9d2e0, args=<value
 optimized out>, kwds=<value optimized out>) at
 numpy/core/src/multiarray/methods.c:2030
 #5  0x000000000049b574 in call_function (f=0x12e47d50, throwflag=<value
 optimized out>) at Python/ceval.c:4012
 #6  PyEval_EvalFrameEx (f=0x12e47d50, throwflag=<value optimized out>) at
 Python/ceval.c:2665
 #7  0x000000000049d3bb in PyEval_EvalCodeEx (co=0x11f957b0, globals=<value
 optimized out>, locals=<value optimized out>, args=0x2, argcount=1,
     kws=0x12e47cd8, kwcount=0, defs=0x11f93728, defcount=1, closure=0x0)
 at Python/ceval.c:3252
 #8  0x000000000049aeb5 in call_function (f=0x12e47ae0, throwflag=<value
 optimized out>) at Python/ceval.c:4108
 #9  PyEval_EvalFrameEx (f=0x12e47ae0, throwflag=<value optimized out>) at
 Python/ceval.c:2665
 #10 0x000000000049d3bb in PyEval_EvalCodeEx (co=0x11f8f2b0, globals=<value
 optimized out>, locals=<value optimized out>, args=0x5, argcount=6,
     kws=0x12e47aa8, kwcount=0, defs=0x11f9e260, defcount=2, closure=0x0)
 at Python/ceval.c:3252
 #11 0x000000000049aeb5 in call_function (f=0x12e478b0, throwflag=<value
 optimized out>) at Python/ceval.c:4108
 #12 PyEval_EvalFrameEx (f=0x12e478b0, throwflag=<value optimized out>) at
 Python/ceval.c:2665
 #13 0x000000000049d3bb in PyEval_EvalCodeEx (co=0x11f8f430, globals=<value
 optimized out>, locals=<value optimized out>, args=0x7, argcount=6,
     kws=0x12e47878, kwcount=0, defs=0x11f98548, defcount=6, closure=0x0)
 at Python/ceval.c:3252
 #14 0x000000000049aeb5 in call_function (f=0x12e47680, throwflag=<value
 optimized out>) at Python/ceval.c:4108
 #15 PyEval_EvalFrameEx (f=0x12e47680, throwflag=<value optimized out>) at
 Python/ceval.c:2665
 #16 0x000000000049d3bb in PyEval_EvalCodeEx (co=0x11eeddb0, globals=<value
 optimized out>, locals=<value optimized out>, args=0x4, argcount=1,
 kws=0x0,
     kwcount=0, defs=0x2b9bb36971a8, defcount=3, closure=0x0) at
 Python/ceval.c:3252
 #17 0x00000000004fb1bf in function_call (func=0x11f8e938, arg=0x123239d0,
 kw=0x0) at Objects/funcobject.c:526
 #18 0x00000000004186ed in PyObject_Call (func=0x11f8e938, arg=0x123239d0,
 kw=0x0) at Objects/abstract.c:2522
 #19 0x00000000004945a6 in PyEval_CallObjectWithKeywords (func=0x11f8e938,
 arg=0x123239d0, kw=0x0) at Python/ceval.c:3881
 #20 0x00002aaab025cedd in array_repr (self=<value optimized out>) at
 numpy/core/src/multiarray/arrayobject.c:435
 #21 0x000000000044d57a in PyObject_Repr (v=0x12c9d2e0) at
 Objects/object.c:381
 #22 0x000000000049b736 in call_function (f=0x12e47460, throwflag=<value
 optimized out>) at Python/ceval.c:4000
 #23 PyEval_EvalFrameEx (f=0x12e47460, throwflag=<value optimized out>) at
 Python/ceval.c:2665
 #24 0x000000000049d3bb in PyEval_EvalCodeEx (co=0x1197e930, globals=<value
 optimized out>, locals=<value optimized out>, args=0x12e46e08, argcount=3,
     kws=0x12e46e20, kwcount=0, defs=0x0, defcount=0, closure=0x0) at
 Python/ceval.c:3252
 #25 0x000000000049aeb5 in call_function (f=0x12e46c50, throwflag=<value
 optimized out>) at Python/ceval.c:4108
 #26 PyEval_EvalFrameEx (f=0x12e46c50, throwflag=<value optimized out>) at
 Python/ceval.c:2665

-- 
Ticket URL: <http://projects.scipy.org/numpy/ticket/1588#comment:1>
NumPy <http://projects.scipy.org/numpy>
My example project


More information about the NumPy-Tickets mailing list