diff options
author | 2019-03-22 02:18:31 +0000 | |
---|---|---|
committer | 2019-03-22 02:18:31 +0000 | |
commit | 3701157f7fbcfa2e93c00143d5881c75a25f535a (patch) | |
tree | 0bf9617e24170d8aecab20998a29d0d628f50ec2 | |
parent | Test that "calendar -A 0" on a Friday doesn't include weekend events. (diff) | |
download | wireguard-openbsd-3701157f7fbcfa2e93c00143d5881c75a25f535a.tar.xz wireguard-openbsd-3701157f7fbcfa2e93c00143d5881c75a25f535a.zip |
don't blindly complete admin queue entries
there's a bit in the flags field that the firmware sets when the
command is done, so check to decide if the command is ready to be
completed. this in turn makes ixl_iff work.
"oh" jmatthew@
-rw-r--r-- | sys/dev/pci/if_ixl.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/dev/pci/if_ixl.c b/sys/dev/pci/if_ixl.c index 6a3a5fe11d5..e8bcc4be3de 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.28 2019/03/21 12:30:58 dlg Exp $ */ +/* $OpenBSD: if_ixl.c,v 1.29 2019/03/22 02:18:31 dlg Exp $ */ /* * Copyright (c) 2013-2015, Intel Corporation @@ -3025,6 +3025,8 @@ ixl_atq_done(struct ixl_softc *sc) do { slot = &atq[cons]; + if (!ISSET(slot->iaq_flags, htole16(IXL_AQ_DD))) + break; iatq = (struct ixl_atq *)slot->iaq_cookie; iatq->iatq_desc = *slot; |