mirror of
https://github.com/opnsense/src.git
synced 2026-05-28 04:12:45 -04:00
If ti_chipinit() fails in ti_stop(), ignore the error and release
all allocated TX/RX buffer resources. If the interface is brought to up again after the error, we will leak allocated TX/RX buffers.
This commit is contained in:
parent
4fce1b52ed
commit
aeeee7eec1
1 changed files with 5 additions and 5 deletions
|
|
@ -3845,11 +3845,11 @@ ti_stop(struct ti_softc *sc)
|
|||
TI_DO_CMD(TI_CMD_HOST_STATE, TI_CMD_CODE_STACK_DOWN, 0);
|
||||
|
||||
/* Halt and reinitialize. */
|
||||
if (ti_chipinit(sc) != 0)
|
||||
return;
|
||||
ti_mem_zero(sc, 0x2000, 0x100000 - 0x2000);
|
||||
if (ti_chipinit(sc) != 0)
|
||||
return;
|
||||
if (ti_chipinit(sc) == 0) {
|
||||
ti_mem_zero(sc, 0x2000, 0x100000 - 0x2000);
|
||||
/* XXX ignore init errors. */
|
||||
ti_chipinit(sc);
|
||||
}
|
||||
|
||||
/* Free the RX lists. */
|
||||
ti_free_rx_ring_std(sc);
|
||||
|
|
|
|||
Loading…
Reference in a new issue