EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  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  <20172018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: Asyn 4-30 Problem on Arm processor
From: Mark Rivers <[email protected]>
To: Jörn Dreyer <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Fri, 17 Mar 2017 11:41:18 +0000
2017/03/17 12:31:57.937 HAM1 queueUnlockPort

2017/03/17 12:31:57.942 HAM1 asynManager::queueLockPort locking port

Segmentationfault


OK, so you are still getting a segfault.


I think this must be due to an error in your driver or database.


Can you explain why you are writing your own driver rather than using StreamDevice?


What happens if you temporarily remove PINI=YES from that ao record?


Mark


________________________________
From: Jörn Dreyer [[email protected]]
Sent: Friday, March 17, 2017 6:34 AM
To: Mark Rivers
Cc: [email protected]
Subject: Re: Asyn 4-30 Problem on Arm processor


Hi Mark,



what I get now is:



#!../../bin/linux-arm/crpc
< envPaths_raspi
epicsEnvSet("ARCH","linux-arm")
epicsEnvSet("IOC",raspi01)
epicsEnvSet("TOP","/home/fwkk_scs/Epics/app")
epicsEnvSet("SNCSEQ","/home/fwkk_scs/Epics/EPICS-3.15.5/seq-2.2.2")
epicsEnvSet("EPICS_BASE","/home/fwkk_scs/Epics/EPICS-3.15.5/base-3.15.5")
epicsEnvSet("ASYN","/home/fwkk_scs/Epics/EPICS-3.15.5/modules/asyn4-26")
epicsEnvSet("STREAM_PROTOCOL_PATH","/home/fwkk_scs/Epics/app/protocols")
epicsEnvSet("MOTOR","/home/fwkk_scs/Epics/EPICS-3.15.5/modules/motorR6-9")
epicsEnvSet("NETSNMP","/home/fwkk_scs/Epics/EPICS-3.15.5/modules/snmp")
epicsEnvSet("BUSY","/home/fwkk_scs/Epics/EPICS-3.15.5/modules/src/busy-1-6-1")
epicsEnvSet("AUTOSAVE","/home/fwkk_scs/Epics/EPICS-3.15.5/modules/src/autosave-R5-7-1")
epicsEnvSet("CALC","/home/fwkk_scs/Epics/EPICS-3.15.5/modules/src/calc-R3-6-1")
epicsEnvSet("IOCSTATS","/home/fwkk_scs/Epics/EPICS-3.15.5/modules/src/iocStats")
epicsEnvSet("SSCAN","/home/fwkk_scs/Epics/EPICS-3.15.5/modules/src/sscan-2-10")
epicsEnvSet("STD","/home/fwkk_scs/Epics/EPICS-3.15.5/modules/src/std-R3-4-1")
epicsEnvSet("MIBDIRS","/usr/share/mibs/ietf:/home/fwkk_scs/Epics/app/protocols")
epicsEnvSet("WCR_PREF","guru WIENER-CRATE-MIB::")
cd /home/fwkk_scs/Epics/app
## Register all support components
dbLoadDatabase "dbd/crpc.dbd"
crpc_registerRecordDeviceDriver pdbbase
# Setup for HAMAMATSU power supply
HamamatsuC11204_02AsynPortDriverConfigure("HAM1","/dev/ttyUSB0",0)
asynSetTraceMask("HAM1",0,0x1f)
asynSetTraceIOMask("HAM1",0,0x1f)
dbLoadRecords "db/Hamamatsu_C11204.db"
dbLoadRecords ("db/iocAdminSoft.db", "IOC=raspi01")
dbLoadRecords ("db/iocAdminScanMon.db", "IOC=raspi01")
## Run this to trace the stages of iocInit
#traceIocInit
asynReport 5
HAM1 multiDevice:No canBlock:No autoConnect:Yes
   enabled:Yes connected:Yes numberConnects 1
   nDevices 0 nQueued 0 blocked:No
   asynManagerLock:No synchronousLock:No
   exceptionActive:No exceptionUsers 0 exceptionNotifys 0
   traceMask:0x1f traceIOMask:0x1f traceInfoMask:0x1
   interposeInterfaceList
       asynOctet pinterface 0xb6ca6408 drvPvt 0x14409d8
   interfaceList
       asynCommon pinterface 0xb6ca65fc drvPvt 0x1448098
       asynDrvUser pinterface 0xb6ca6608 drvPvt 0x1448098
       asynOctet pinterface 0xb6ca6654 drvPvt 0x1448098
       asynInt32 pinterface 0xb6ca6614 drvPvt 0x1448098
       asynFloat64 pinterface 0xb6ca6644 drvPvt 0x1448098
Port: HAM1
 Timestamp: <undefined>
 Input EOS[0]:
 Output EOS[0]:
Parameter list 0
Number of parameters is: 19
Parameter 0 type=asynFloat64, name=SECOND_SIDE_HIGH_TEMP_CORR_FACTOR, value is undefined
Parameter 1 type=asynFloat64, name=SECOND_SIDE_LOW_TEMP_CORR_FACTOR, value is undefined
Parameter 2 type=asynFloat64, name=PRIMARY_SIDE_HIGH_TEMP_CORR_FACTOR, value is undefined
Parameter 3 type=asynFloat64, name=PRIMARY_SIDE_LOW_TEMP_CORR_FACTOR, value is undefined
Parameter 4 type=asynFloat64, name=REFERENCE_VOLTAGE, value is undefined
Parameter 5 type=asynFloat64, name=REFERENCE_TEMPERATURE, value is undefined
Parameter 6 type=asynInt32, name=STATUS_READ, value is undefined
Parameter 7 type=asynFloat64, name=VOLTAGE_READ, value is undefined
Parameter 8 type=asynFloat64, name=CURRENT_READ, value is undefined
Parameter 9 type=asynFloat64, name=TEMPERATURE_READ, value is undefined
Parameter 10 type=string, name=DEVICE_NAME_READ, value is undefined
Parameter 11 type=string, name=DEVICE_VERSION_READ, value is undefined
Parameter 12 type=string, name=DEVICE_BUILD_DATE_READ, value is undefined
Parameter 13 type=asynInt32, name=HV_OUTPUT_ON, value is undefined
Parameter 14 type=asynInt32, name=HV_OUTPUT_OFF, value is undefined
Parameter 15 type=asynInt32, name=RESET, value is undefined
Parameter 16 type=asynInt32, name=SET_TEMP_COMP_MODE, value is undefined
Parameter 17 type=asynInt32, name=MODE_WRITE, value is undefined
Parameter 18 type=asynInt32, name=MODE_READ, value is undefined
cd /home/fwkk_scs/Epics/app/iocBoot/ioccrpc
iocInit
Starting iocInit
############################################################################
## EPICS R3.15.5
## EPICS Base built Mar  3 2017
############################################################################
2017/03/17 12:31:57.921 HAM1 asynManager::queueLockPort locking port
2017/03/17 12:31:57.926 asynPortDriver::getBounds,low=0, high=65535
2017/03/17 12:31:57.929 asynInt32SyncIO getBounds: status=0 low 0 high 65535
2017/03/17 12:31:57.932 HAM1 queueUnlockPort
2017/03/17 12:31:57.935 HAM1 asynManager::queueLockPort locking port
2017/03/17 12:31:57.936 asynPortDriver::getBounds,low=0, high=65535
2017/03/17 12:31:57.936 asynInt32SyncIO getBounds: status=0 low 0 high 65535
2017/03/17 12:31:57.937 HAM1 queueUnlockPort
2017/03/17 12:31:57.942 HAM1 asynManager::queueLockPort locking port
Segmentationfault

I know, its a bit of improvement, but...

gdb tells me:



Program received signal SIGSEGV, Segmentation fault.
readFloat64 (drvPvt=0x0, pasynUser=0x0, value=0x0) at ../../asyn/asynPortDriver/asynPortDriver.cpp:1984
1984        pPvt->unlock();
(gdb) bt
#0  readFloat64 (drvPvt=0x0, pasynUser=0x0, value=0x0) at ../../asyn/asynPortDriver/asynPortDriver.cpp:1984
#1  0xb6cc07c0 in readOp (pasynUser=0xdb0a0, pvalue=0xbefff300, timeout=<optimized out>)
   at ../../asyn/interfaces/asynFloat64SyncIO.c:162
#2  0xb6cef308 in initAo (pao=0xba3f8) at ../../asyn/devEpics/devAsynFloat64.c:514
#3  0xb6b7d830 in init_record (prec=<optimized out>, pass=<optimized out>) at ../../../src/std/rec/aoRecord.c:139
#4  0xb6b491c0 in doInitRecord1 (user=0x0, precord=<optimized out>, pdbRecordType=0xa78a0)
   at ../../../src/ioc/misc/iocInit.c:543
#5  iterateRecords (func=<optimized out>, user=0x0) at ../../../src/ioc/misc/iocInit.c:472
#6  initDatabase () at ../../../src/ioc/misc/iocInit.c:551
#7  iocBuild_2 () at ../../../src/ioc/misc/iocInit.c:148
#8  0xb6b49330 in iocBuild () at ../../../src/ioc/misc/iocInit.c:187
#9  0xb6b49504 in iocInit () at ../../../src/ioc/misc/iocInit.c:99
#10 0xb6a61d6c in iocshBody (pathname=<optimized out>, commandLine=0x47a68 "H\331\v",
   macros=0x14 <error: Cannot access memory at address 0x14>) at ../../../src/libCom/iocsh/iocsh.cpp:815
#11 0x0001eba4 in main (argc=<optimized out>, argv=<optimized out>) at ../crpcMain.cpp:17

and thats exactly the same place as before.



Jörn


Replies:
Re: Asyn 4-30 Problem on Arm processor Jörn Dreyer
References:
Asyn 4-30 Problem on Arm processor Jörn Dreyer
Re: Asyn 4-30 Problem on Arm processor Jörn Dreyer
RE: Asyn 4-30 Problem on Arm processor Mark Rivers
Re: Asyn 4-30 Problem on Arm processor Jörn Dreyer

Navigate by Date:
Prev: Re: Asyn 4-30 Problem on Arm processor Jörn Dreyer
Next: Re: Asyn 4-30 Problem on Arm processor Jörn Dreyer
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Asyn 4-30 Problem on Arm processor Jörn Dreyer
Next: Re: Asyn 4-30 Problem on Arm processor Jörn Dreyer
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  <20172018  2019  2020  2021  2022  2023  2024 
ANJ, 21 Dec 2017 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·