On 02/27/18 09:06, Stefan Sperling wrote: > On Mon, Feb 26, 2018 at 11:55:34PM +0100, j...@posteo.de wrote: >> When connecting to a wifi network messages like "iwm0: unhandled firmware >> response 0xff/0xb8000010 rx ring" appear. >> After looking at https://patchwork.kernel.org/patch/9869017/ I came up with >> following patch. >> The link also explains what is happening. > > Thanks for this! > >> I'm not sure if it makes sense to log the firmware responses like the linux >> kernel does. >> They don't appear to have any negative effect so I decided against it. > > Agreed. There is no point in logging this. > > There are two problems with your diff: > > The first is that somehow it got corrupted (whitespace got mangled, lines > got wrapped which shouldn't have been). Please check your mailer settings. > Tip: You can mail a diff to yourself and then try to apply it until you've > figured out how to make your mail client work right. I've quoted the diff > I received below as-is, so if you save this mail body and feed it into > patch(1) you will see what problems I saw. > In this particular instance it's not a huge burden because the diff adds > just 3 lines, but I basically had to rewrite your patch from scratch to > apply it, which is no fun, especially for larger diffs.
Sorry for that. Seems my config was eaten. Again. > The next problem: You're catching this notification in a case block which > handles commands we expect to get a response for, but we don't even want > to parse the data contained in this notification. > I think it would be better to move it to a different case: block which just > does a 'break;'. There should be some of those already so you could add it > there, or you could introduce a new case: block, whichever you prefer. I moved the catch which is marked as ignored. Thanks for the review! diff --git sys/dev/pci/if_iwm.c sys/dev/pci/if_iwm.c index 476c61f0b3d..af3eeb76978 100644 --- sys/dev/pci/if_iwm.c +++ sys/dev/pci/if_iwm.c @@ -7316,6 +7316,10 @@ iwm_notif_intr(struct iwm_softc *sc) break; } + case IWM_WIDE_ID(IWM_SYSTEM_GROUP, + IWM_FSEQ_VER_MISMATCH_NOTIFICATION): + break; + /* * Firmware versions 21 and 22 generate some DEBUG_LOG_MSG * messages. Just ignore them for now. diff --git sys/dev/pci/if_iwmreg.h sys/dev/pci/if_iwmreg.h index 3c5cfea7b23..06eef017015 100644 --- sys/dev/pci/if_iwmreg.h +++ sys/dev/pci/if_iwmreg.h @@ -1813,6 +1813,9 @@ struct iwm_agn_scd_bc_tbl { #define IWM_NET_DETECT_HOTSPOTS_CMD 0x58 #define IWM_NET_DETECT_HOTSPOTS_QUERY_CMD 0x59 +/* system group command IDs */ +#define IWM_FSEQ_VER_MISMATCH_NOTIFICATION 0xff + #define IWM_REPLY_MAX 0xff /** @@ -5820,6 +5823,7 @@ iwm_cmd_id(uint8_t opcode, uint8_t groupid, uint8_t version) /* due to the conversion, this group is special */ #define IWM_ALWAYS_LONG_GROUP 1 +#define IWM_SYSTEM_GROUP 4 struct iwm_cmd_header { uint8_t code;