Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 31 Oct 2011 23:02:42 +0300
From:      Sergey Kandaurov <pluknet@freebsd.org>
To:        Alan Cox <alc@rice.edu>
Cc:        Alan Cox <alc@freebsd.org>, 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-mSOJKgpi6_P5S7Ko8hdo6C6oKLYFtuurfjuyxpxJm5zWcRQ@mail.gmail.com>
In-Reply-To: <4EAED730.5080205@rice.edu>
References:  <201110300506.p9U56E3l049042@svn.freebsd.org> <CAE-mSOK3pc01j0m%2BxPKbakL6OJB3HszQ4Cx1tPu%2Bugro3wAp=Q@mail.gmail.com> <4EAED730.5080205@rice.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On 31 October 2011 21:13, Alan Cox <alc@rice.edu> wrote:
> On 10/31/2011 11:33, Sergey Kandaurov wrote:
>>
>> On 30 October 2011 09:06, Alan Cox<alc@freebsd.org> =A0wrote:
>>>
>>> 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 a=
n
>>> =A0arbitrary number of physically contiguous pages. =A0In particular, i=
t
>>> =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 @
>> 0xfffffe0002700800
>> panic: Most recently used by proc-args
>>
>> cpuid =3D 1
>> KDB: stack backtrace:
>> db_trace_self_wrapper() at 0xffffffff802e009a =3D db_trace_self_wrapper+=
0x2a
>> 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 ---
>>
>>
>
> I've not experienced anything like this, and I can't really see a direct
> connection between the above crash and the change. =A0So, the only thing =
that
> I can suggest is reverting one piece of the change at a time. =A0Please t=
ry
> this first:
>

 I'm sorry.
It appears that was due to regression in my local changes which triggered
coinciding with this revision. I just reproduced it without your change.
Sorry for noise.

--=20
wbr,
pluknet



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