Hello -
We're running an IOC on a MVME2700 board with VxWorks5.5 and
EPICS 3.13.9. Yesterday we logged a DMA underflow event from the
network which resulted in a restart of the driver. CA couldn't
survive and we quickly had S_errno_ENOBUFS. We had to reboot to
recover.
Does the DMA underflow indicate a bus error? Is CA designed to
survive such an event? Short of upgrading to EPICS 3.14.x is
there anything that can be done to prevent this?
Thanks,
-Matt
Here's some relevant code from the end driver:
/* restart if DMA underflow is detected */
if (pTxD->tDesc0 & PCISWAP(TDESC0_UF))
{
LOG_MSG ("%s%d - fatal DMA underflow\n",
(int) DRV_NAME, pDrvCtrl->unit, 0, 0, 0, 0);
dec21x4xStop (pDrvCtrl);
pDrvCtrl->txCleaning = FALSE;
netJobAdd ((FUNCPTR)dec21x4xRestart, (int)pDrvCtrl, 0, 0, 0, 0);
return;
}
- Replies:
- RE: DEC driver DMA Underflow Mark Rivers
- RE: DEC driver DMA Underflow Jeff Hill
- Navigate by Date:
- Prev:
RE: Modbus help Mark Rivers
- Next:
RE: DEC driver DMA Underflow Mark Rivers
- 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: Rethinking asyn motor drivers Mark Rivers
- Next:
RE: DEC driver DMA Underflow Mark Rivers
- 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
|