[VxWorks] 请教:vxworks的end驱动缓冲区满的问题。

ytwolf007   2012-9-7 16:40 楼主
LOCAL void motFecReceive
    (
    DRV_CTRL *   pDrvCtrl,       /* pointer to DRV_CTRL structure */
    MOT_FEC_RBD_ID      pUsedRbd        /* pointer to a RBD */
    )
    {
。。。。。。。。。。。。。。。。。。
      /* Allocate an MBLK, and a replacement buffer */
    /*从pNetPool里取一个 mBlk */
    pMblk = NET_MBLK_ALLOC();/*netMblkGet(pDrvCtrl->endObj.pNetPool, M_DONTWAIT, MT_DATA)*/
    /*从pNetPool里取一个 cluster */
    pBuf = NET_BUF_ALLOC ();/*netClusterGet (pDrvCtrl->endObj.pNetPool, pDrvCtrl->pClPoolId);*/
    /*从pNetPool里取一个 clBlk */
    pClBlk = NET_CL_BLK_ALLOC();/*netClBlkGet (pDrvCtrl->endObj.pNetPool, M_DONTWAIT)*/
    if ((pMblk == NULL) || (pBuf == NULL) || (pClBlk == NULL))
{
MOT_FEC_RX_MEM_ADD;
MOT_FEC_LOG (MOT_FEC_DBG_RX, ("motFecReceive mem problem\n"),
          0, 0, 0, 0, 0, 0);
goto motFecRecvError;
}

请教,为什么在运行一段时间后,就会出现上述粗体字出现的情况呢?是否是上层没有读取?

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复