Re: repeatable panic on pageout with 945GM

From: Michael Butler <imb_at_protected-networks.net>
Date: Thu, 2 Jun 2016 23:27:51 -0400
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_at_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
> _at__at_ -211,7 +211,8 _at__at_ 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);

Slight variation -won't build as above; trying with "pmap_page_is_mapped(m)"

	imb
Received on Fri Jun 03 2016 - 01:27:56 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:05 UTC