diff options
author | Alexander Bluhm <bluhm@cvs.openbsd.org> | 2019-08-06 19:24:46 +0000 |
---|---|---|
committer | Alexander Bluhm <bluhm@cvs.openbsd.org> | 2019-08-06 19:24:46 +0000 |
commit | 988f4324273984d91891a3d4a899e2ca482405de (patch) | |
tree | 9b8258f8216abb34130a272613619ab630d176c6 /sys | |
parent | a454bb55ddf7dbec254285b990373d5525cd5b9b (diff) |
The vio(4) interface did not recover from mbuf shortage. The logic
to start the rx tick did not work since we use if_rxr_get(). An
easy fix is to start the rx timeout every second unconditionally.
OK dlg@
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/pv/if_vio.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/sys/dev/pv/if_vio.c b/sys/dev/pv/if_vio.c index 4df7f21ee55..4bc311cf324 100644 --- a/sys/dev/pv/if_vio.c +++ b/sys/dev/pv/if_vio.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_vio.c,v 1.12 2019/05/26 15:22:31 sf Exp $ */ +/* $OpenBSD: if_vio.c,v 1.13 2019/08/06 19:24:45 bluhm Exp $ */ /* * Copyright (c) 2012 Stefan Fritsch, Alexander Fiveg. @@ -982,10 +982,7 @@ vio_populate_rx_mbufs(struct vio_softc *sc) if (done) virtio_notify(vsc, vq); - if (vq->vq_used_idx != vq->vq_avail_idx) - timeout_del(&sc->sc_rxtick); - else - timeout_add_sec(&sc->sc_rxtick, 1); + timeout_add_sec(&sc->sc_rxtick, 1); } /* dequeue received packets */ |