Thank you Mark and Kay, I believe my problem is solved now. I ran the IOC from gdb that way and saw:
#5 0x00007ffff7bd89a6 in SmarActMCS2Axis::stop(double) [clone .localalias.1]
() from /home/alex/iocs/motor/lib/linux-x86_64/libsmarActMCS2Motor.so
#6 0x00007ffff7bd89a6 in SmarActMCS2Axis::stop(double) [clone .localalias.1]
() from /home/alex/iocs/motor/lib/linux-x86_64/libsmarActMCS2Motor.so
Repeated over and over again. My SmarActMCS2Axis::stop function had a line in it that read "stop(channel)", which was supposed to be calling a function in the global namespace, but was instead calling itself recursively. Replacing it with "::stop(channel)" fixed the problem.
Alex
-----Original Message-----
From: Kasemir, Kay [mailto:[email protected]]
Sent: Thursday, February 1, 2018 1:49 PM
To: Sobhani, Bayan <[email protected]>
Cc: [email protected]
Subject: Re: Segmentation fault when setting motorStatusProblem_ to 1
>How exactly do i run the IOC from gdb?
# Go to the directory that has the st.cmd file cd iocStart/your_ioc_directory
# Check the st.cmd file. It should start with something like # "#!../../bin/linuxx86_64/name_of_your_ioc_binary"
#
# That's what you load into GDB
gdb ../../bin/linuxx86_64/name_of_your_ioc_binary
# Then, inside gdb, you start the process with the st.cmd file as input run st.cmd
# Once it crashes, list the threads
info threads
# Pick one
thread 3
# Get backtrace
bt
# Select some interesting stack frame
frame 2
# print stuff
print some_var
print *some_pointer_var
- References:
- Segmentation fault when setting motorStatusProblem_ to 1 Sobhani, Bayan
- RE: Segmentation fault when setting motorStatusProblem_ to 1 Mark Rivers
- RE: Segmentation fault when setting motorStatusProblem_ to 1 Sobhani, Bayan
- Re: Segmentation fault when setting motorStatusProblem_ to 1 Kasemir, Kay
- Navigate by Date:
- Prev:
Re: Segmentation fault when setting motorStatusProblem_ to 1 Kasemir, Kay
- Next:
cross-compiling for ppc64 with seq 2.1 and 2.2 Jeong Han Lee
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
<2018>
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: Segmentation fault when setting motorStatusProblem_ to 1 Kasemir, Kay
- Next:
cross-compiling for ppc64 with seq 2.1 and 2.2 Jeong Han Lee
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
<2018>
2019
2020
2021
2022
2023
2024
|