Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 31 Oct 2011 19:33:01 +0300
From:      Sergey Kandaurov <pluknet@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: r226928 - head/sys/vm
Message-ID:  <CAE-mSOK3pc01j0m%2BxPKbakL6OJB3HszQ4Cx1tPu%2Bugro3wAp=Q@mail.gmail.com>
In-Reply-To: <201110300506.p9U56E3l049042@svn.freebsd.org>
References:  <201110300506.p9U56E3l049042@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 30 October 2011 09:06, Alan Cox <alc@freebsd.org> wrote:
> Author: alc
> Date: Sun Oct 30 05:06:14 2011
> New Revision: 226928
> URL: http://svn.freebsd.org/changeset/base/226928
>
> Log:
> =A0Eliminate vm_phys_bootstrap_alloc(). =A0It was a failed attempt at
> =A0eliminating duplicated code in the various pmap implementations.
>
> =A0Micro-optimize vm_phys_free_pages().
>
> =A0Introduce vm_phys_free_contig(). =A0It is fast routine for freeing an
> =A0arbitrary number of physically contiguous pages. =A0In particular, it
> =A0doesn't require the number of pages to be a power of two.
>
> =A0Use "u_long" instead of "unsigned long".
>
> =A0Bruce Evans (bde@) has convinced me that the "boundary" parameters
> =A0to kmem_alloc_contig(), vm_phys_alloc_contig(), and
> =A0vm_reserv_reclaim_contig() should be of type "vm_paddr_t" and not
> =A0"u_long". =A0Make this change.

Hello.

After updating to this revision I constantly get random mtrash_ctor()
assertions. [most often during make installkernel, otherwise idle.]

Below is one of them (previous memory consumers in panicstr differ).

Memory modified after free 0xfffffe0002700800(120) val=3D0 @ 0xfffffe000270=
0800
panic: Most recently used by proc-args

cpuid =3D 1
KDB: stack backtrace:
db_trace_self_wrapper() at 0xffffffff802e009a =3D db_trace_self_wrapper+0x2=
a
kdb_backtrace() at 0xffffffff80486f17 =3D kdb_backtrace+0x37
panic() at 0xffffffff8044f87e =3D panic+0x2ee
mtrash_ctor() at 0xffffffff8068c904 =3D mtrash_ctor+0x84
uma_zalloc_arg() at 0xffffffff8068c16c =3D uma_zalloc_arg+0x2dc
malloc() at 0xffffffff8043abd6 =3D malloc+0xc6
pargs_alloc() at 0xffffffff804425d3 =3D pargs_alloc+0x23
kern_execve() at 0xffffffff8041cb47 =3D kern_execve+0x1277
sys_execve() at 0xffffffff8041ce6d =3D sys_execve+0x3d
amd64_syscall() at 0xffffffff806c6319 =3D amd64_syscall+0x299
Xfast_syscall() at 0xffffffff806b16b7 =3D Xfast_syscall+0xf7
--- syscall (59, FreeBSD ELF64, sys_execve), rip =3D 0x800d4cbec, rsp =3D
0x7fffffffd1a8, rbp =3D 0x8014124a0 ---


--=20
wbr,
pluknet



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAE-mSOK3pc01j0m%2BxPKbakL6OJB3HszQ4Cx1tPu%2Bugro3wAp=Q>