Add iwm/iwx background scan task to the queue which it will be deleted from.
authorstsp <stsp@openbsd.org>
Wed, 5 Jul 2023 15:07:28 +0000 (15:07 +0000)
committerstsp <stsp@openbsd.org>
Wed, 5 Jul 2023 15:07:28 +0000 (15:07 +0000)
The corresponding task_add and task_del calls were operating on different
queues by mistake. Background scan tasks should now get cancelled properly
during driver state transitions.

ok mvs@

sys/dev/pci/if_iwm.c
sys/dev/pci/if_iwx.c

index 1547120..5f8042d 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: if_iwm.c,v 1.407 2023/04/14 12:45:10 stsp Exp $       */
+/*     $OpenBSD: if_iwm.c,v 1.408 2023/07/05 15:07:28 stsp Exp $       */
 
 /*
  * Copyright (c) 2014, 2016 genua gmbh <info@genua.de>
@@ -8574,7 +8574,7 @@ iwm_bgscan_done(struct ieee80211com *ic,
        free(sc->bgscan_unref_arg, M_DEVBUF, sc->bgscan_unref_arg_size);
        sc->bgscan_unref_arg = arg;
        sc->bgscan_unref_arg_size = arg_size;
-       iwm_add_task(sc, sc->sc_nswq, &sc->bgscan_done_task);
+       iwm_add_task(sc, systq, &sc->bgscan_done_task);
 }
 
 void
index c7c71f3..26b0020 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: if_iwx.c,v 1.174 2023/07/03 09:12:05 jsg Exp $        */
+/*     $OpenBSD: if_iwx.c,v 1.175 2023/07/05 15:07:28 stsp Exp $       */
 
 /*
  * Copyright (c) 2014, 2016 genua gmbh <info@genua.de>
@@ -7607,7 +7607,7 @@ iwx_bgscan_done(struct ieee80211com *ic,
        free(sc->bgscan_unref_arg, M_DEVBUF, sc->bgscan_unref_arg_size);
        sc->bgscan_unref_arg = arg;
        sc->bgscan_unref_arg_size = arg_size;
-       iwx_add_task(sc, sc->sc_nswq, &sc->bgscan_done_task);
+       iwx_add_task(sc, systq, &sc->bgscan_done_task);
 }
 
 void