On Fri, Jan 21, 2022 at 03:31:14PM -0700, Thomas Frohwein wrote: > On Fri, Jan 21, 2022 at 07:54:29PM +1100, Jonathan Gray wrote: > > On Thu, Jan 20, 2022 at 04:08:28PM -0700, Thomas Frohwein wrote: > > > On Fri, Jan 21, 2022 at 12:22:49AM +1100, Jonathan Gray wrote: > > > > On Wed, Jan 19, 2022 at 11:04:26PM -0800, guent...@openbsd.org wrote: > > > [...] > > > > > The backtrace is kinda nonsensical, showing a copyout() call with no > > > > > predecessor, but maybe that's just from copy*() not setting up a > > > > > proper > > > > > frame? However, that's not a change. Neither has there been any > > > > > change > > > > > in the pmap layer in multiple months. The areas of concern IMO are > > > > > DRM > > > > > and (because it was the last thing mentioned) iwm, but the former > > > > > seems > > > > > _much_ more likely. > > > > > > > > Booting bsd.mp with inteldrm disabled works? > > > > > > yes, boots and uses llvmpipe after I disable inteldrm* > > > > this fixes sleeping with a mtx held found with kern.pool_debug=2 > > which may help > > thanks, however no change after I built MP kernel and installed it. Still the > same pmap error that I posted in the original bug report.
Can you try a kernel with this diff and 'option WITNESS' uncommented in sys/arch/amd64/conf/GENERIC.MP ? Index: sys/dev/pci/drm/drm_drv.c =================================================================== RCS file: /cvs/src/sys/dev/pci/drm/drm_drv.c,v retrieving revision 1.181 diff -u -p -r1.181 drm_drv.c --- sys/dev/pci/drm/drm_drv.c 14 Jan 2022 06:52:59 -0000 1.181 +++ sys/dev/pci/drm/drm_drv.c 22 Jan 2022 21:33:37 -0000 @@ -1202,12 +1202,16 @@ drm_attach_platform(struct drm_driver *d config_found_sm(dev, &arg, drmprint, drmsubmatch); } +extern int pool_debug; + struct drm_device * drm_attach_pci(const struct drm_driver *driver, struct pci_attach_args *pa, int is_agp, int primary, struct device *dev, struct drm_device *drm) { struct drm_attach_args arg; struct drm_softc *sc; + + pool_debug = 2; arg.drm = drm; arg.driver = driver;