Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Apr 2010 22:17:01 -0700
From:      "K. Macy" <kmacy@freebsd.org>
To:        Alan Cox <alc@freebsd.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r206140 - head/sys/vm
Message-ID:  <x2m82c4140e1004192217s4562f8c7ze88026ec9316d6d6@mail.gmail.com>
In-Reply-To: <201004031620.o33GKM0n037332@svn.freebsd.org>
References:  <201004031620.o33GKM0n037332@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
How has the problem been addressed? I'm seeing periodic panics with
non-zero resident count with the page lock patch applied. It is
possible that I've inadvertently re-introduced an issue you've fixed.

Thanks,
Kip

On Sat, Apr 3, 2010 at 9:20 AM, Alan Cox <alc@freebsd.org> wrote:
> Author: alc
> Date: Sat Apr =A03 16:20:22 2010
> New Revision: 206140
> URL: http://svn.freebsd.org/changeset/base/206140
>
> Log:
> =A0Re-enable the call to pmap_release() by vmspace_dofree(). =A0The accou=
nting
> =A0problem that is described in the comment has been addressed.
>
> =A0Submitted by: kib
> =A0Tested by: =A0 =A0pho (a few months ago)
> =A0MFC after: =A0 =A06 weeks
>
> Modified:
> =A0head/sys/vm/vm_map.c
>
> Modified: head/sys/vm/vm_map.c
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D
> --- head/sys/vm/vm_map.c =A0 =A0 =A0 =A0Sat Apr =A03 15:52:32 2010 =A0 =
=A0 =A0 =A0(r206139)
> +++ head/sys/vm/vm_map.c =A0 =A0 =A0 =A0Sat Apr =A03 16:20:22 2010 =A0 =
=A0 =A0 =A0(r206140)
> @@ -313,6 +313,7 @@ vm_init2(void)
> =A0static inline void
> =A0vmspace_dofree(struct vmspace *vm)
> =A0{
> +
> =A0 =A0 =A0 =A0CTR1(KTR_VM, "vmspace_free: %p", vm);
>
> =A0 =A0 =A0 =A0/*
> @@ -329,12 +330,8 @@ vmspace_dofree(struct vmspace *vm)
> =A0 =A0 =A0 =A0(void)vm_map_remove(&vm->vm_map, vm->vm_map.min_offset,
> =A0 =A0 =A0 =A0 =A0 =A0vm->vm_map.max_offset);
>
> - =A0 =A0 =A0 /*
> - =A0 =A0 =A0 =A0* XXX Comment out the pmap_release call for now. The
> - =A0 =A0 =A0 =A0* vmspace_zone is marked as UMA_ZONE_NOFREE, and bugs ca=
use
> - =A0 =A0 =A0 =A0* pmap.resident_count to be !=3D 0 on exit sometimes.
> - =A0 =A0 =A0 =A0*/
> -/* =A0 =A0 pmap_release(vmspace_pmap(vm)); */
> + =A0 =A0 =A0 pmap_release(vmspace_pmap(vm));
> + =A0 =A0 =A0 vm->vm_map.pmap =3D NULL;
> =A0 =A0 =A0 =A0uma_zfree(vmspace_zone, vm);
> =A0}
>
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?x2m82c4140e1004192217s4562f8c7ze88026ec9316d6d6>