Date: Sat, 4 Jun 2016 09:08:45 -0400 From: Michael Butler <imb@protected-networks.net> To: Matthew Macy <mmacy@nextbsd.org>, "K. Macy" <kmacy@freebsd.org> Cc: "freebsd-current@freebsd.org" <freebsd-current@freebsd.org> Subject: Re: repeatable panic on pageout with 945GM Message-ID: <939f9d2b-e925-e8e0-0ff3-8d90623728c6@protected-networks.net> In-Reply-To: <1551419a1db.12929035f45012.326107747932338888@nextbsd.org> References: <2490f1c7-8153-ece3-49ed-4b3886564fd7@protected-networks.net> <da19738b-6bf1-10a3-4428-43b6095ec35a@protected-networks.net> <205d4423-b834-9a21-785f-fa15d44c78ec@protected-networks.net> <CAHM0Q_PR5Aoak6A7f=tsRy0DJFCmLDVfRGpceZ0mXU3P%2BxO8DA@mail.gmail.com> <1551419a1db.12929035f45012.326107747932338888@nextbsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 06/02/16 22:31, Matthew Macy wrote: > Tell me if that makes any difference. > > -M > > > ---- On Thu, 02 Jun 2016 16:55:53 -0700 K. Macy <kmacy@freebsd.org> wrote ---- > > It looks like it might be trying to remove mappings for a page that doesn't > > have any. It's a bit odd. Likely a bug in cdev_pager_free_page or gem > > release mmap. Compile the kernel and driver with -O0 and look at the page. > > It's too bad I don't support AGP yet with DRM 4.6. Maybe in a week or two. > > > > diff --git a/sys/vm/device_pager.c b/sys/vm/device_pager.c > index 013f0d5..917ece7 100644 > --- a/sys/vm/device_pager.c > +++ b/sys/vm/device_pager.c > @@ -211,7 +211,8 @@ cdev_pager_free_page(vm_object_t object, vm_page_t m) > VM_OBJECT_ASSERT_WLOCKED(object); > if (object->type == OBJT_MGTDEVICE) { > KASSERT((m->oflags & VPO_UNMANAGED) == 0, ("unmanaged %p", m)); > - pmap_remove_all(m); > + if (pmap_page_is_mapped(page)) > + pmap_remove_all(m); > vm_page_lock(m); > vm_page_remove(m); > vm_page_unlock(m); > This "band-aid" seems to have worked. I haven't had a single panic since - Thanks! :-) I tried to compile with -O0 but, for some reason, it panics in the sound driver with a double-fault. When I get time, I'll recompile only the files involved and see if I can't get a decent trace (and dump) to identify the cause, imb
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?939f9d2b-e925-e8e0-0ff3-8d90623728c6>