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  <20122013  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  <20122013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: Here is a Message
From: Mark Rivers <[email protected]>
To: "Szalata, Zenon M." <[email protected]>, "[email protected]" <[email protected]>
Date: Fri, 9 Mar 2012 19:43:04 +0000
Hi Zen,

I suspect you did not set the asynInt32ArrayMask bit to the asynPortDriver constructor, telling it that your driver will implement that interface.

The 64-bit issue is not a problem, FTVL=LONG means 32-bit integer in EPICS.

Mark


________________________________________
From: Szalata, Zenon M. [[email protected]]
Sent: Friday, March 09, 2012 1:40 PM
To: Mark Rivers; [email protected]
Subject: RE: Here is a Message

Hi Mark,
No, it is a different problem.
The error is generated by doCallbacksInt32Array(), which is not called at interrupt level.
I notice that there is something wrong with my waveform record to which the callback is supposed to put data.

record(waveform,"$(P):WF:DATA"){
  field( DTYP, "asynInt32ArrayIn")
  field( INP,  "@asyn($(PORT),0,1)WF_DATA")
  field( SCAN, "I/O Intr")
  field( NELM, "16")
  field( FTVL, "LONG")
  field( PINI, "1")
}

At IOC init time I get this message, I don't understand why:

devAsynInt32Array::initCommon, TEST1:GADC0:WF:DATA find asynInt32Array interface failed.
There is reference in my .dbd file to asynInt32ArrayIn.

In a different device driver and a different IOC I use the same record with Float32 and that IOC works.

As somewhat different and related issue, I wonder what will happen when I build and run this code on a 64 bit machine.  I wonder if field( FTVL,"LONG") means that on 64 bit each element will be 8 bytes long?  If so there may be trouble.

Thanks,
Zen


> -----Original Message-----
> From: Mark Rivers [mailto:[email protected]]
> Sent: Friday, March 09, 2012 11:11 AM
> To: Szalata, Zenon M.; [email protected]
> Subject: RE: Here is a Message
>
> Hi Zen,
>
>
>
> This message makes me wonder if you are doing asyn callbacks at interrupt
> level?  If so, you should not do that, you should have your interrupt routine
> signal another thread which does the asyn callbacks.
>
>
> >  interrupt: errlogPrintf called from interrupt level
>
> Mark
>
>
> ________________________________
> From: [email protected] [[email protected]] on
> behalf of Szalata, Zenon M. [[email protected]]
> Sent: Friday, March 09, 2012 12:59 PM
> To: [email protected]
> Subject: Here is a Message
>
> While modifying and testing a device driver subclassed from asynPortDriver for
> a VME module I am getting this message:
>
>
> A call to 'assert(status == epicsMutexLockOK)'
>     by thread 'cbLow' failed in ../../asyn/asynDriver/asynManager.c line 2222.
> EPICS Release EPICS R3.14.11 $R3-14-11$ $2009/08/28 18:47:36$.
> Local time is 2012-03-09 10:52:43.182719160 PUS
> Please E-mail this message to the author or to [email protected]
> Calling epicsThreadSuspendSelf()
> Thread cbLow (0x1692b30) suspended
> interrupt: errlogPrintf called from interrupt level
>
> I am using asyn R4.17.
>
> I am sending this message because the message tells me to.
> I will comment out my recent modifications and try to pinpoint which part of
> my device driver is responsible.
>
> Thanks,
> Zen

Replies:
RE: Here is a Message Szalata, Zenon M.
References:
Here is a Message Szalata, Zenon M.
RE: Here is a Message Mark Rivers
RE: Here is a Message Szalata, Zenon M.

Navigate by Date:
Prev: RE: Here is a Message Szalata, Zenon M.
Next: RE: Here is a Message Szalata, Zenon M.
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: Here is a Message Szalata, Zenon M.
Next: RE: Here is a Message Szalata, Zenon M.
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  <20122013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·