UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor jmgnbshg
Visitor
348 Views
Registered: ‎08-11-2016

SDK System Debugger (TCF): Thread suspended whith POSIX signal 32 and I can not override it in signals menu

Dear all.

 

I am developing a Linux application with SDK 2017.3 and I have a problem with posix signals. I am using libpthread and nanosleep() function.

 

If I place the nanosleep in the main() I have no problems. However if I generate a POSIX thread, and inside that thread I call nanosleep(), it seems that the library is somehow using Signal 32 for performing internally the sleep.

When TCF sees this signal, the thread execution is Suspended:

image.png

I always have to resume the thread execution manually in SDK when this happens.

 

I tried to change the behaviour of SDK with this signaling. I right click in the thread and select "Signals..." menu. I tried setting a "Don't stop" to all signals:

 

image.png

 

but it seems that signal 32 is not configurable, so I cannot tell the program to not suspend execution when it receives a signal 32.

 

Is it possible to configure SDK to not suspend with signal 32?

Have this menu changed in new version of SDK after 2017.3?

 

Any help would be highly appreciated.

 

Best Regards

0 Kudos
3 Replies
Xilinx Employee
Xilinx Employee
309 Views
Registered: ‎10-21-2010

Re: SDK System Debugger (TCF): Thread suspended whith POSIX signal 32 and I can not override it in signals menu

Hi @jmgnbshg,

Signal 32 is reserved by glibc, for cancellation/timer expiration, so debugger doesn't have control over these. Please see https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/nptl-signals.h;h=7560a2182546beb72784c822d9021c45cdda2bce;hb=refs/heads/release/2.23/master

In your case, signal 32 could be pointing to time overflow, but I'm not sure

 

0 Kudos
Highlighted
Visitor jmgnbshg
Visitor
304 Views
Registered: ‎08-11-2016

Re: SDK System Debugger (TCF): Thread suspended whith POSIX signal 32 and I can not override it in signals menu

Many thanks for your post.

 

I think we will not dig inside glibc or pthread libraries source code to see who and why is using this signal, since in our code we don't use it and the program runs properly when we are not debugging.

 

However, it is pretty annoying to see the execution suspended when this signal appears and resume the execution manually everytime.

 

That's why we asked if we can configure the TCF behaviour to not suspend the execution with this signal as we can do with the other 60 signals in the signal menu.

0 Kudos
Xilinx Employee
Xilinx Employee
269 Views
Registered: ‎10-21-2010

Re: SDK System Debugger (TCF): Thread suspended whith POSIX signal 32 and I can not override it in signals menu

Hi @jmgnbshg,

I have created a XSDB script to configure the signals. Can you please use it to configure signal 32? I have added help at the beginning of the script

0 Kudos