Mercurial > ecos
diff packages/io/eth/current/src/net/eth_drv.c @ 160:0d0f03f76f6a
Merge from eCos master repository on 2001-06-01-18:52:13-BST
| author | jlarmour |
|---|---|
| date | Fri, 01 Jun 2001 22:16:29 +0000 |
| parents | 52c99470ec11 |
| children | 11b54a94cf58 |
line wrap: on
line diff
--- a/packages/io/eth/current/src/net/eth_drv.c +++ b/packages/io/eth/current/src/net/eth_drv.c @@ -655,6 +655,7 @@ eth_drv_recv(struct eth_drv_sc *sc, int MCLGET(m, M_DONTWAIT); if ((m->m_flags & M_EXT) == 0) { m_freem(top); + m_free(m); #ifdef CYGPKG_IO_ETH_DRIVERS_WARN_NO_MBUFS diag_printf("warning: eth_recv out of MBUFs\n"); #endif @@ -674,7 +675,7 @@ eth_drv_recv(struct eth_drv_sc *sc, int sg_len++; *mp = m; mp = &m->m_next; - } + } // endwhile // Ask hardware to unload buffers (sc->funs->recv)(sc, sg_list, sg_len); @@ -749,7 +750,7 @@ void eth_drv_run_deliveries( void ) #endif sc->state &=~ETH_DRV_NEEDS_DELIVERY; #if defined(CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT) - was_ctrlc_int = HAL_CTRLC_CHECK((*sc->funs->int_vector)(sc), sc); + was_ctrlc_int = HAL_CTRLC_CHECK((*sc->funs->int_vector)(sc), (int)sc); if (!was_ctrlc_int) // Fall through and run normal code #endif (*sc->funs->deliver)(sc);
