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: | recDynLink.c and swait.c error messaged during ioc start |
From: | "Gofron, Kazimierz via Tech-talk" <tech-talk at aps.anl.gov> |
To: | "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> |
Date: | Wed, 4 May 2022 21:09:46 +0000 |
Hi,
I've been working on EPICS pid ioc for temperature control, that uses Wiener power supply and Keithly 3706A PT1000 sensors scanner.
Recently we updated RHEL8.5 kernel, and I noticed that ioc shows errors since end of April 2022. Update might not be related to OS update. I might also be missing something in the dependency. Perhaps
someone observed this before.
## EPICS R7.0.6
## Rev. R7.0.6
OS: RHEL8.5
During ioc startup, getting error messages from
sscan: / recDynLink.c : 549
precDynLink->onQueue++;
if (epicsMessageQueueTrySend(recDynLinkOutMsgQ, (void *)&cmd,
sizeof(cmd))) {
errMessage(0,"recDynLinkPut: epicsMessageQueueTrySend error");
status = RINGBUFF_PUT_ERROR;
precDynLink->onQueue--;
}
calc: / swait.c : 838/840
recDynLinkGet(precDynLink, &monData, &nRequest,
0, 0,
0);
if (swaitRecordDebug>5)
errlogPrintf("swaitRecord(%s)inputChanged: queuing monitor on
%d =
%f\n",pwait->name,index,monData);
if (epicsRingBytesPut(pcbst->monitorQ, (char *)&index,
sizeof(char))
!= sizeof(char))
errMessage(0,"recWait rngBufPut error");
if (epicsRingBytesPut(pcbst->monitorQ, (char *)&monData,
sizeof(double))
!= sizeof(double))
errMessage(0,"recWait rngBufPut error");
if (swaitRecordDebug>5) {
errlogPrintf("swaitRecord(%s)inputChanged:
%d entries left in monitorQ\n",
pwait->name,
(int)(epicsRingBytesFreeBytes(pcbst->monitorQ)/sizeof(struct qStruct)));
}
calc: / swait.c: 870/872
if (!swaitRecordCacheMode) {
if (epicsRingBytesGet(pcbst->monitorQ, (char *)&inputIndex,
sizeof(char))
!= sizeof(char))
errMessage(0,
"recWait: rngBufGet error");
if (epicsRingBytesGet(pcbst->monitorQ, (char *)&monData,
sizeof(double))
!= sizeof(double))
errMessage(0,
"recWait: rngBufGet error");
=========================
epics> filename="../recDynLink.c" line number=549
recDynLinkPut: epicsMessageQueueTrySend error
filename="../recDynLink.c" line number=549
recDynLinkPut: epicsMessageQueueTrySend error
filename="../recDynLink.c" line number=549
recDynLinkPut: epicsMessageQueueTrySend error
filename="../recDynLink.c" line number=549
recDynLinkPut: epicsMessageQueueTrySend error
filename="../recDynLink.c" line number=549
recDynLinkPut: epicsMessageQueueTrySend error
filename="../recDynLink.c" line number=549
recDynLinkPut: epicsMessageQueueTrySend error
filename="../recDynLink.c" line number=549
recDynLinkPut: epicsMessageQueueTrySend error
filename="../recDynLink.c" line number=549
recDynLinkPut: epicsMessageQueueTrySend error
ioc_settings.sav: 1575 of 1575 PV's connected
errlog: 34 messages were discarded
filename="../swaitRecord.c" line number=840
recWait rngBufPut error
filename="../swaitRecord.c" line number=840
recWait rngBufPut error
filename="../swaitRecord.c" line number=840
recWait rngBufPut error
filename="../swaitRecord.c" line number=840
recWait rngBufPut error
filename="../swaitRecord.c" line number=840
recWait rngBufPut error
filename="../swaitRecord.c" line number=840
recWait rngBufPut error
filename="../swaitRecord.c" line number=840
recWait rngBufPut error
filename="../swaitRecord.c" line number=840
recWait rngBufPut error
filename="../swaitRecord.c" line number=838
recWait rngBufPut error
filename="../swaitRecord.c" line number=840
recWait rngBufPut error
filename="../swaitRecord.c" line number=838
recWait rngBufPut error
filename="../swaitRecord.c" line number=840
recWait rngBufPut error
filename="../swaitRecord.c" line number=872
recWait: rngBufGet error
filename="../swaitRecord.c" line number=870
recWait: rngBufGet error
filename="../swaitRecord.c" line number=872
recWait: rngBufGet error
filename="../swaitRecord.c" line number=870
recWait: rngBufGet error
filename="../swaitRecord.c" line number=872
recWait: rngBufGet error
filename="../swaitRecord.c" line number=870
===================
After ioc boots, the messages stop.
Thanks for the help!
Kazimierz
|