[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Discuss-gnuradio] Segmentation fault in volk_32f_s32f_multiply_32f_
From: |
Tom Rondeau |
Subject: |
Re: [Discuss-gnuradio] Segmentation fault in volk_32f_s32f_multiply_32f_a_sse |
Date: |
Sat, 7 Apr 2012 11:35:12 -0400 |
On Sat, Apr 7, 2012 at 10:19 AM, Alexandru Csete <address@hidden> wrote:
> On Sat, Apr 7, 2012 at 4:13 PM, Tom Rondeau <address@hidden> wrote:
>> On Sat, Apr 7, 2012 at 9:48 AM, Alexandru Csete <address@hidden> wrote:
>>> Greetings,
>>>
>>> I'm getting segmentation faults in a C++ application when I restart
>>> the flow graph, i.e by doing:
>>>
>>> tb->start()
>>> ...
>>> tb->stop()
>>> tb->wait()
>>> ...
>>> tb->start()
>>> (crashes)
>>>
>>> Running the application through a debugger suggests it is
>>> volk_32f_s32f_multiply_32f_a_sse which is used by a gr_multiply_ff()
>>> block. I end up with the attached assembly dump with a marker
>>> highlighting line 19.
>>>
>>> I have attached a simple python flow graph, which also crashes for me.
>>> Note that the python code was originally generated by GRC and it used
>>> gr.multiply_const_vff which didn't crash. I manually changed it to
>>> gr.multiply_const_ff to provoke the crash.
>>>
>>> This is happening on Ubuntu 11.04 64 bit and intel i7 processor. I'm
>>> also seeing the message "Using Volk machine: sse4_2_64" when I start
>>> the graph. GNU Radio is built using cmake.
>>>
>>> Alex
>>
>> What version of GNU Radio are you using? This sounds like a bug that
>> was fixed a little while ago and is not a release version yet (will be
>> in 3.5.3).
>>
>
> Hi Tom,
>
> I pulled from origin/master earlier today. Git describe says
> v3.5.2.1-103-gfaf1d33
> Is there another branch I can try?
>
> Alex
Alex,
Can you try applying the attached patch? It should work, but I've only
tested it on one of my machines. This makes sure all buffers are
aligned and all blocks know if after a start and restart.
Thanks,
Tom
ff_alignment.diff
Description: Binary data