diff options
author | YASUOKA Masahiko <yasuoka@cvs.openbsd.org> | 2019-10-02 04:51:35 +0000 |
---|---|---|
committer | YASUOKA Masahiko <yasuoka@cvs.openbsd.org> | 2019-10-02 04:51:35 +0000 |
commit | a70b2a72d2d06a55d6fc6ecb772f53f89bbc091e (patch) | |
tree | 20a255e090e484a8e5203e3507d9f8a26c2bd3d4 /sys/dev/pci | |
parent | 76d469d0f1747023835a208df49eaada212b7cc2 (diff) |
When dequeuing an aqb from the live queue and move it to the idle queue,
remove it from the live queue. Found by Shoichi Yamaguchi.
ok dlg
Diffstat (limited to 'sys/dev/pci')
-rw-r--r-- | sys/dev/pci/if_ixl.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/pci/if_ixl.c b/sys/dev/pci/if_ixl.c index f5c41ae053d..7aeebb96fee 100644 --- a/sys/dev/pci/if_ixl.c +++ b/sys/dev/pci/if_ixl.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_ixl.c,v 1.44 2019/09/30 06:25:01 dlg Exp $ */ +/* $OpenBSD: if_ixl.c,v 1.45 2019/10/02 04:51:34 yasuoka Exp $ */ /* * Copyright (c) 2013-2015, Intel Corporation @@ -2961,6 +2961,7 @@ ixl_arq(void *xsc) iaq = &arq[cons]; aqb = SIMPLEQ_FIRST(&sc->sc_arq_live); + SIMPLEQ_REMOVE_HEAD(&sc->sc_arq_live, aqb_entry); bus_dmamap_sync(sc->sc_dmat, aqb->aqb_map, 0, IXL_AQ_BUFLEN, BUS_DMASYNC_POSTREAD); |