On Sun, Feb 22, 2015 at 11:11:50PM -0330, Michael wrote:
> > So it's running into a NULL pointer but it's still unclear where and why.
> > Perhaps it's an unchecked allocation failure, perhaps some other problem.
> >
> > Are you comfortable with adding some debug printf to see which function in
> > bwi is the last called one before the crash? Would you need help with that?
>
> Yes, I can add in some debugging if you could tell me how/where it is needed.
> I see in the later emails no-one else seems to have this issue so if
> it is just specific to my systems then I can do some further tests as
> needed.
Given what miod said the interrupt handler (bwi_intr) might be a good
plaec to start.
Though perhaps that is not even reached? Do you get any call to bwi_intr?
I don't know where to start debugging ioapic issues.
Index: bwi.c
===================================================================
RCS file: /cvs/src/sys/dev/ic/bwi.c,v
retrieving revision 1.116
diff -u -p -r1.116 bwi.c
--- bwi.c 10 Feb 2015 23:25:46 -0000 1.116
+++ bwi.c 23 Feb 2015 07:11:19 -0000
@@ -73,8 +73,9 @@
#include <uvm/uvm_extern.h>
+#define BWI_DEBUG
#ifdef BWI_DEBUG
-int bwi_debug = 1;
+int bwi_debug = 2;
#define DPRINTF(l, x...) do { if ((l) <= bwi_debug) printf(x); } while
(0)
#else
#define DPRINTF(l, x...)
@@ -578,6 +579,7 @@ bwi_intr(void *xsc)
uint32_t txrx_intr_status[BWI_TXRX_NRING];
int i, txrx_error, tx = 0, rx_data = -1;
+ printf("%s\n", __func__);
if ((ifp->if_flags & IFF_RUNNING) == 0)
return (0);