<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote">On Sat, Jun 15, 2013 at 3:15 PM, Julian Taylor <span dir="ltr">&lt;<a href="mailto:jtaylor.debian@googlemail.com" target="_blank">jtaylor.debian@googlemail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="im">On 15.06.2013 21:12, Charles R Harris wrote:<br>
&gt;<br>
&gt;<br>
&gt; On Sat, Jun 15, 2013 at 9:50 AM, Warren Weckesser<br>
</div><div class="im">&gt; &lt;<a href="mailto:warren.weckesser@gmail.com">warren.weckesser@gmail.com</a> &lt;mailto:<a href="mailto:warren.weckesser@gmail.com">warren.weckesser@gmail.com</a>&gt;&gt; wrote:<br>
&gt;<br>
&gt;<br>
&gt;     On Sat, Jun 15, 2013 at 11:43 AM, Warren Weckesser<br>
</div><div><div class="h5">&gt;     &lt;<a href="mailto:warren.weckesser@gmail.com">warren.weckesser@gmail.com</a> &lt;mailto:<a href="mailto:warren.weckesser@gmail.com">warren.weckesser@gmail.com</a>&gt;&gt; wrote:<br>
&gt;<br>
&gt;         I&#39;m getting a seg. fault in master when I run the tests.  I&#39;m on<br>
&gt;         Ubuntu 12.04 64 bit, with Python 3.3.2 (64 bits):<br>
&gt;<br>
&gt;         $ python3 -c &quot;import numpy as np; np.test(&#39;full&#39;)&quot;<br>
&gt;         Running unit tests for numpy<br>
&gt;         NumPy version 1.8.0.dev-fa5bc1c<br>
&gt;         NumPy is installed in<br>
&gt;         /home/warren/local_py332/lib/python3.3/site-packages/numpy<br>
&gt;         Python version 3.3.2 (default, Jun 14 2013, 12:12:22) [GCC 4.6.3]<br>
&gt;         nose version 1.3.0<br>
&gt;         .............................S.........................................................................................................................................................S.......................................................................................................................................................S....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................<br>

 .........<br>
.............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................K............................................................................................................................................................................................SSS.<br>

 .........<br>
.......................................................................................K.....................................................................................................................................................................................Segmentation<br>

&gt;         fault<br>
&gt;<br>
&gt;         The seg. fault is occurring in ma/tests/test_mrecords.py:<br>
&gt;<br>
&gt;         $ nosetests test_mrecords.py<br>
&gt;         .Segmentation fault<br>
&gt;<br>
&gt;         More info:<br>
&gt;<br>
&gt;         $ python3<br>
&gt;         Python 3.3.2 (default, Jun 14 2013, 12:12:22)<br>
&gt;         [GCC 4.6.3] on linux<br>
&gt;         Type &quot;help&quot;, &quot;copyright&quot;, &quot;credits&quot; or &quot;license&quot; for more<br>
&gt;         information.<br>
&gt;         &gt;&gt;&gt; import numpy as np<br>
&gt;         &gt;&gt;&gt; np.show_config()<br>
&gt;         atlas_threads_info:<br>
&gt;             library_dirs = [&#39;/usr/lib/atlas-base/atlas&#39;,<br>
&gt;         &#39;/usr/lib/atlas-base&#39;]<br>
&gt;             include_dirs = [&#39;/usr/include/atlas&#39;]<br>
&gt;             language = f77<br>
&gt;             libraries = [&#39;lapack&#39;, &#39;ptf77blas&#39;, &#39;ptcblas&#39;, &#39;atlas&#39;]<br>
&gt;             define_macros = [(&#39;ATLAS_INFO&#39;, &#39;&quot;\\&quot;3.8.4\\&quot;&quot;&#39;)]<br>
&gt;         atlas_blas_threads_info:<br>
&gt;             library_dirs = [&#39;/usr/lib/atlas-base&#39;]<br>
&gt;             include_dirs = [&#39;/usr/include/atlas&#39;]<br>
&gt;             language = c<br>
&gt;             libraries = [&#39;ptf77blas&#39;, &#39;ptcblas&#39;, &#39;atlas&#39;]<br>
&gt;             define_macros = [(&#39;ATLAS_INFO&#39;, &#39;&quot;\\&quot;3.8.4\\&quot;&quot;&#39;)]<br>
&gt;         mkl_info:<br>
&gt;           NOT AVAILABLE<br>
&gt;         lapack_opt_info:<br>
&gt;             library_dirs = [&#39;/usr/lib/atlas-base/atlas&#39;,<br>
&gt;         &#39;/usr/lib/atlas-base&#39;]<br>
&gt;             include_dirs = [&#39;/usr/include/atlas&#39;]<br>
&gt;             language = f77<br>
&gt;             libraries = [&#39;lapack&#39;, &#39;ptf77blas&#39;, &#39;ptcblas&#39;, &#39;atlas&#39;]<br>
&gt;             define_macros = [(&#39;ATLAS_INFO&#39;, &#39;&quot;\\&quot;3.8.4\\&quot;&quot;&#39;)]<br>
&gt;         blas_opt_info:<br>
&gt;             library_dirs = [&#39;/usr/lib/atlas-base&#39;]<br>
&gt;             include_dirs = [&#39;/usr/include/atlas&#39;]<br>
&gt;             language = c<br>
&gt;             libraries = [&#39;ptf77blas&#39;, &#39;ptcblas&#39;, &#39;atlas&#39;]<br>
&gt;             define_macros = [(&#39;ATLAS_INFO&#39;, &#39;&quot;\\&quot;3.8.4\\&quot;&quot;&#39;)]<br>
&gt;         lapack_mkl_info:<br>
&gt;           NOT AVAILABLE<br>
&gt;         blas_mkl_info:<br>
&gt;           NOT AVAILABLE<br>
&gt;         &gt;&gt;&gt;<br>
&gt;<br>
&gt;         gdb:<br>
&gt;<br>
&gt;         $ gdb python3<br>
&gt;         GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1) 7.4-2012.04<br>
&gt;         Copyright (C) 2012 Free Software Foundation, Inc.<br>
&gt;         License GPLv3+: GNU GPL version 3 or later<br>
&gt;         &lt;<a href="http://gnu.org/licenses/gpl.html" target="_blank">http://gnu.org/licenses/gpl.html</a>&gt;<br>
&gt;         This is free software: you are free to change and redistribute it.<br>
&gt;         There is NO WARRANTY, to the extent permitted by law.  Type<br>
&gt;         &quot;show copying&quot;<br>
&gt;         and &quot;show warranty&quot; for details.<br>
&gt;         This GDB was configured as &quot;x86_64-linux-gnu&quot;.<br>
&gt;         For bug reporting instructions, please see:<br>
&gt;         &lt;<a href="http://bugs.launchpad.net/gdb-linaro/" target="_blank">http://bugs.launchpad.net/gdb-linaro/</a>&gt;...<br>
&gt;         Reading symbols from /home/warren/local_py332/bin/python3...done.<br>
&gt;         (gdb) run test_mrecords.py<br>
&gt;         Starting program: /home/warren/local_py332/bin/python3<br>
&gt;         test_mrecords.py<br>
&gt;         [Thread debugging using libthread_db enabled]<br>
&gt;         Using host libthread_db library<br>
&gt;         &quot;/lib/x86_64-linux-gnu/libthread_db.so.1&quot;.<br>
&gt;         .<br>
&gt;         Program received signal SIGSEGV, Segmentation fault.<br>
&gt;         0x00007ffff5f080a4 in<br>
&gt;         _aligned_strided_to_contig_size8_srcstride0 (dst=&lt;optimized out&gt;,<br>
&gt;             dst_stride=&lt;optimized out&gt;, src=&lt;optimized out&gt;,<br>
&gt;         __NPY_UNUSED_TAGGEDsrc_stride=&lt;optimized out&gt;,<br>
&gt;             N=&lt;optimized out&gt;,<br>
&gt;         __NPY_UNUSED_TAGGEDsrc_itemsize=&lt;optimized out&gt;,<br>
&gt;         __NPY_UNUSED_TAGGEDdata=0x0)<br>
&gt;             at numpy/core/src/multiarray/lowlevel_strided_loops.c.src:190<br>
&gt;         190            *((@type@ *)dst) = temp;<br>
&gt;         (gdb)<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; Is this repeatable? Just asking as I don&#39;t see that here with gcc 4.7.2.<br>
&gt; Looks like Julian&#39;s changes to lowlevel_strided_loops may be responsible.<br>
&gt;<br>
&gt; Chuck<br>
&gt;<br>
<br>
</div></div>I can&#39;t reproduce it on ubuntu 12.04 with python 3.2 (don&#39;t have 3.3.2)<br>
the changes made are very minimal, from looking at them again I don&#39;t<br>
see how they could cause this (especially on a x86 platform).<br>
<br>
@warren, can you please bisect the commit causing this?<br></blockquote><div><br><br></div><div>Here&#39;s the culprit:<br><br><span style="font-family:courier new,monospace">aef286debfd11a62f1c337dea55624cee7fd4d9e is the first bad commit<br>
commit aef286debfd11a62f1c337dea55624cee7fd4d9e<br>Author: Julian Taylor &lt;<a href="mailto:jtaylor.debian@googlemail.com">jtaylor.debian@googlemail.com</a>&gt;<br>Date:   Mon Jun 10 19:38:58 2013 +0200<br><br>    ENH: enable unaligned loads on x86<br>
    <br>    x86 can handle unaligned load and there is no hand vectorized code in<br>    this file. It would be a serious compiler bug if it adds vectorization<br>    without checking for alignment.<br>    Enables fast complex128 copies which are unaligned on 32 bit gcc unless<br>
    compiled with -malign-double.<br><br>:040000 040000 d0948d1e1d942d41d50ce9e57bdc430db9a16f9e 45a48f383353857b8d0dd24e542c7ab6f137448c M  numpy<br></span><br></div><div>Link: <a href="https://github.com/numpy/numpy/commit/aef286debfd11a62f1c337dea55624cee7fd4d9e">https://github.com/numpy/numpy/commit/aef286debfd11a62f1c337dea55624cee7fd4d9e</a><br>
<br></div><div>Warren<br><br> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
_______________________________________________<br>
NumPy-Discussion mailing list<br>
<a href="mailto:NumPy-Discussion@scipy.org">NumPy-Discussion@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/numpy-discussion" target="_blank">http://mail.scipy.org/mailman/listinfo/numpy-discussion</a><br>
</blockquote></div><br></div></div>