On Wed, Dec 16, 2015 at 10:14:49AM -0500, David Hill wrote: > Hi Stefan - > > Thanks for the 11n work! > > Unfortunately, your diff breaks iwn on my machine. > > iwn0 at pci2 dev 0 function 0 "Intel Centrino Ultimate-N 6300" rev 0x35: > msi, MIMO 3T3R, MoW, > > It spews over and over: > > iwn0: fatal firmware error > firmware error log: > error type = "SYSASSERT" (0x00000005) > program counter = 0x00022278 > source line = 0x00000218 > error data = 0x000002180000000B > branch link = 0x0002225800022258 > interrupt link = 0x0000153200000000 > time = 2127856977 > driver status: > tx ring 0: qid=0 cur=4 queued=0 > tx ring 1: qid=1 cur=0 queued=0 > tx ring 2: qid=2 cur=0 queued=0 > tx ring 3: qid=3 cur=0 queued=0 > tx ring 4: qid=4 cur=41 queued=0 > tx ring 5: qid=5 cur=0 queued=0 > tx ring 6: qid=6 cur=0 queued=0 > tx ring 7: qid=7 cur=0 queued=0 > tx ring 8: qid=8 cur=0 queued=0 > tx ring 9: qid=9 cur=0 queued=0 > tx ring 10: qid=10 cur=0 queued=0 > tx ring 11: qid=11 cur=0 queued=0 > tx ring 12: qid=12 cur=0 queued=0 > tx ring 13: qid=13 cur=0 queued=0 > tx ring 14: qid=14 cur=0 queued=0 > tx ring 15: qid=15 cur=0 queued=0 > tx ring 16: qid=16 cur=0 queued=0 > tx ring 17: qid=17 cur=0 queued=0 > tx ring 18: qid=18 cur=0 queued=0 > tx ring 19: qid=19 cur=0 queued=0 > rx ring: cur=14 > 802.11 state 4 >
Thanks for testing! I cannot do much based on the information provided. Could you recompile with IWM_DEBUG defined, and perhaps place a few additional printfs at strategic locations, to figure out which firmware command is last sent before the firmware crashes? That would help me a great deal. If you don't want the firmware to be restarted over and over so it won't print these lines repeatedly, disabling the init_task which attempts to recover from firmware crashes might help: if (r1 & (IWN_INT_SW_ERR | IWN_INT_HW_ERR)) { printf("%s: fatal firmware error\n", sc->sc_dev.dv_xname); /* Dump firmware error log and stop. */ iwn_fatal_intr(sc); iwn_stop(ifp, 1); task_add(systq, &sc->init_task); <-- remove this line return 1; }