Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/dev/pci The bnx(4) handler runs at IPL_NET (works with s...



details:   https://anonhg.NetBSD.org/src/rev/48329a6f09c5
branches:  trunk
changeset: 769762:48329a6f09c5
user:      jym <jym%NetBSD.org@localhost>
date:      Thu Sep 22 08:42:53 2011 +0000

description:
The bnx(4) handler runs at IPL_NET (works with spin mutexes), while
allocations can be deferred to a workqueue(9): set its highest IPL to
IPL_NET and not IPL_NONE, which is protected by an adaptive/sleeping mutex.

diffstat:

 sys/dev/pci/if_bnx.c |  6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diffs (27 lines):

diff -r a88e22998877 -r 48329a6f09c5 sys/dev/pci/if_bnx.c
--- a/sys/dev/pci/if_bnx.c      Thu Sep 22 07:30:04 2011 +0000
+++ b/sys/dev/pci/if_bnx.c      Thu Sep 22 08:42:53 2011 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: if_bnx.c,v 1.44 2011/07/15 11:29:31 jym Exp $  */
+/*     $NetBSD: if_bnx.c,v 1.45 2011/09/22 08:42:53 jym Exp $  */
 /*     $OpenBSD: if_bnx.c,v 1.85 2009/11/09 14:32:41 dlg Exp $ */
 
 /*-
@@ -35,7 +35,7 @@
 #if 0
 __FBSDID("$FreeBSD: src/sys/dev/bce/if_bce.c,v 1.3 2006/04/13 14:12:26 ru Exp $");
 #endif
-__KERNEL_RCSID(0, "$NetBSD: if_bnx.c,v 1.44 2011/07/15 11:29:31 jym Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_bnx.c,v 1.45 2011/09/22 08:42:53 jym Exp $");
 
 /*
  * The following controllers are supported by this driver:
@@ -707,7 +707,7 @@
 
        /* create workqueue to handle packet allocations */
        if (workqueue_create(&sc->bnx_wq, device_xname(self),
-           bnx_alloc_pkts, sc, PRI_NONE, IPL_NONE, WQ_MPSAFE) != 0) {
+           bnx_alloc_pkts, sc, PRI_NONE, IPL_NET, WQ_MPSAFE) != 0) {
                aprint_error_dev(self, "failed to create workqueue\n");
                goto bnx_attach_fail;
        }



Home | Main Index | Thread Index | Old Index