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 | 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 |
<== Date ==> | <== Thread ==> |
---|
Subject: | FW: I/O Intr scanning |
From: | Mark Rivers via Tech-talk <[email protected]> |
To: | "[email protected]" <[email protected]> |
Date: | Mon, 27 May 2019 21:44:36 +0000 |
I forgot to CC tech-talk. From: Mark Rivers
Hi Pilar, First, you have not provided enough information to let us help you figure out the problem. What is your driver doing when you write BoardIDSet? What you are trying to do should work, since there are lots
of other drivers that do the same sort of thing with no problems. Second, you have set some compiler flags so that you are getting very little useful information in your traceback. It is not showing you the line numbers, or demangling the C++ function names. I have manually demangled the names of the last 3 functions called: /home/epicsmgr/EPICS/support/asyn/lib/linux-x86_64/libasyn.so(_ZN8paramValD1Ev+0x11)[0x7f145d2d7611] This is paramVal::~paramVal(), in asynPortDriver.
/home/xxx/bpm/bpm_epics/lib/linux-x86_64/libewbasyn.so(_ZN15EWBAsynPortDrvr10writeToDevEii+0x4e)[0x7f145c09ad1e]
So your writeToDev function is calling the destructor for your EWBAsynGenPVPrm object, which is in turn calling the destructor for the paramVal object. This seems unusual. What object are you destroying when
a new integer value is written to your driver? You need a better traceback, and you will need to send your code if we are to help. Mark From:
[email protected] <[email protected]>
On Behalf Of Pilar via Tech-talk Dear all, I'm using a asynPortDriver (4.33) with EPICS base (3.16).
The way I create my asynPortDriver is:
EWBAsynPortDrvr(const char *portName,int max_nprm) and I have one example PV defined as: record(ao, "$(user):BoardIDSet") If I set BoardIDSet to a certain value (for example: 3) BoardIDRdbk does not see the change and it doesnt get updated. But if I try to write again BoardIDSet following error ocurrs:
Error in `/home/sevensols/bpm/bpm_epics/bin/linux-x86_64/AsynBPM7S': double free or corruption (fasttop): 0x00000000023e1b70 *** Can somebody tell me whay the I/O Scan is not working? And also why this error ocurrs Thank you very much in advance! -- Pilar Gil Jaldo Embedded SW Engineer This e-mail and any materials attached hereto, including, without limitation, all content hereof and thereof are confidential and proprietary to Seven Solutions,S.L
and/or its affiliates, and are *confidential*. Without the prior written consent of Seven Solutions, this content may not (i) be disclosed to any third party, (ii) be reproduced, modified
or otherwise used by anyone other than current employees of Seven Solutions or its affiliates. If you are not the intended recipient or if this message has been received in error, please immediately notify us via e-mail and delete it.
|