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>