Experimental Physics and Industrial Control System
Subject: |
Re: Epics 3.14.8: faulty registrar statement in dbd causes memPartAlloc error on vxWorks |
From: |
Goetz Pfeiffer <[email protected]> |
To: |
[email protected] |
Date: |
Fri, 28 May 2010 09:37:54 +0200 |
On 05/27/2010 03:21 PM, Andrew Johnson wrote:
Hi Goetz,
On Thursday 27 May 2010 07:44:23 Goetz Pfeiffer wrote:
I use Epics 3.14.8 for my application. I recently got rid of two of my
sequencer programs due to various optimizations. But I still had a
"registrar" statement in my dbd file, now for a module that no longer
existed.
You should have seen a load failure complaining about missing symbols of the
form pvar_func_<routine> for each of your missing registrar routines. Those
load failures should never be ignored, they indicate problems of this kind.
I verified that any "registrar" statement for a non-existing module
produces this error. But if you see this on the IOC console you have no
idea whats wrong with your program. An error message like "invalid
registrar [registrar-name]" would be much better.
Does the newest Epics release still show this behavior and if it is so,
are any plans to fix this ?
Please check whether you were getting those load errors or not. The
idcp_registerRecordDeviceDriver() subroutine that gets generated from your
IOC's DBD file just calls every registrar function directly, it doesn't
currently have the names of those routines as strings. It could detect this
case, but the load errors should be sufficient to tell you there's something
wrong.
- Andrew
Hello Andrew,
thank you for your quick reply. You are right, when I have a registrar
statement for a non-existing module "blah" I get this error message on the
console (before "memPartAlloc: block too big"):
ld < idcp.munch
Undefined symbol: pvar_func_blah (binding 1 type 0)
sysAtReboot not found. epicsExit will not be called by reboot.
value = 27253064 = 0x19fd948
I will add to my personal Epics FAQ that this message may be caused by a
faulty
registrar statement... :-)
Many greetings
Goetz Pfeiffer
--
Dipl. Ing. Götz Pfeiffer
Software Engineer - Insertion Device Control
Albert-Einstein-Str. 15, D-12489 BERLIN
Fon +49 30 6392 4921
Fax +49 30 6392 4972
[email protected]
[email protected]
Helmholtz-Zentrum Berlin für Materialien und Energie GmbH
Elektronenspeicherring BESSY II
Albert-Einstein-Str. 15, D-12489 BERLIN
Vorsitzende des Aufsichtsrates: Dr. Beatrix Vierkorn-Rudolph,
Geschäftsführer: Prof. Dr. Anke Rita Pyzalla, Prof. Dr. Michael Steiner, Dr. Ulrich Breuer
Sitz Berlin, AG Charlottenburg, 89 HRB 5583
Information:
Durch die Fusion mit dem ehemaligen Hahn-Meitner-Institut (HMI) ist
BESSY ist nun Teil des neuen Helmholtz-Zentrum Berlin für Materialien
und Energie (HZB). Die Fusion wird Anfang 2009 vollzogen sein.
- References:
- Epics 3.14.8: faulty registrar statement in dbd causes memPartAlloc error on vxWorks Goetz Pfeiffer
- Re: Epics 3.14.8: faulty registrar statement in dbd causes memPartAlloc error on vxWorks Andrew Johnson
- Navigate by Date:
- Prev:
Re: labCA and EPICS_CA_MAX_ARRAY_BYTES Matt Newville
- Next:
EPICS wiki is down Benjamin Franksen
- 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: Epics 3.14.8: faulty registrar statement in dbd causes memPartAlloc error on vxWorks Andrew Johnson
- Next:
building areaDetector firewire support on Windows John Dobbins
- 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