On Thu, 2018-09-13 at 19:52 +0200, Stefan Sperling wrote: > On Thu, Sep 13, 2018 at 08:44:05AM -0400, Xavier Guerin wrote: > > > Synopsis: Kernel crash in IWM driver after resume from sleep > > > Category: kernel > > > Environment: > > > > System : OpenBSD 6.4 > > Details : OpenBSD 6.4-beta (GENERIC.MP) #292: Mon Sep 10 > > 18:26:22 MDT 2018 > > dera...@amd64.openbsd.org:/usr/src/sys/arch/am > > d64/compile/GENERIC.MP > > > > Architecture: OpenBSD.amd64 > > Machine : amd64 > > > Description: > > > > IWM is connected to a 802.11G network then the machine is put > > to sleep. > > After several hours, when the machine resumes it ends up in DDB > > after maybe > > 5 minutes crashing in the IWM driver. > > > How-To-Repeat: > > > > 1. Connect the IWM device to a network. > > 2. Put the machine to sleep. > > 3. Wait for some hours. > > 4. Resume. > > > Fix: > > > > Disconnect from WiFi before sleeping. > > If 5 minutes have passed since resume it seems unlikely that a > suspend/resume cycle would have anything to do with this crash. > Note that suspend/resume completely powers down the device and > will cause a new association to be created with an access point. > The post-resume state is as good as new, just like after a reboot. > > The DDB trace looks more like the driver was reading or writing > beyond buffers when the firmware received some particular frame. > > Can you try this diff? It makes the input length checks in > this driver a bit more precise and careful.
Sure thing, thanks. I'm building a patched kernel as we speak and will reboot into it later today. I'll let you know if the problem occurs again.