Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 21 Apr 2006 11:17:27 -0700
From:      "Kip Macy" <kip.macy@gmail.com>
To:        "John Baldwin" <jhb@freebsd.org>
Cc:        Daniel Eischen <deischen@freebsd.org>, freebsd-threads@freebsd.org, David Xu <davidxu@freebsd.org>, freebsd-sparc64@freebsd.org, Kris Kennaway <kris@obsecurity.org>
Subject:   Re: pthread_mutex_timedlock on sparc64
Message-ID:  <b1fa29170604211117n7f95b81ekfe5fa3777b83f534@mail.gmail.com>
In-Reply-To: <200604210901.53807.jhb@freebsd.org>
References:  <20060418204240.GA69833@xor.obsecurity.org> <20060420232533.GA32046@xor.obsecurity.org> <b1fa29170604201942s1349232asab516732b6a0bb0b@mail.gmail.com> <200604210901.53807.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 4/21/06, John Baldwin <jhb@freebsd.org> wrote:
> On Thursday 20 April 2006 10:42 pm, Kip Macy wrote:
> > > > panic: _mtx_lock_sleep: recursed on non-recursive mutex system map =
@
> > > > ../../../vm/vm_map.c:2993 panic() at panic+0x164
> > > > _mtx_lock_sleep() at _mtx_lock_sleep+0x40
> > > > _mtx_lock_flags() at _mtx_lock_flags+0x98
> > > > _vm_map_lock_read() at _vm_map_lock_read+0x1c
> > > > vm_map_lookup() at vm_map_lookup+0x1c
> > > > vm_fault() at vm_fault+0x68
> > > > trap_pfault() at trap_pfault+0x1a8
> > > > trap() at trap+0x2b0
> >
> > This is a bug in the sparc64 pmap implementation. The kernel shouldn't
> > be taking page faults at this point.
>
> Couldn't it be a NULL pointer deref in vm_map_entry_splay()?

Good point. If this "0xe85a6000" is the page address then it is something e=
lse.
           -Kip

>
> > > > -- fast data access mmu miss tar=3D0xe85a6000 %o7=3D0xc02f3b08 --
> > > > vm_map_entry_splay() at vm_map_entry_splay+0x10
> > > > vm_map_find() at vm_map_find+0x34
> > > > kmem_alloc_nofault() at kmem_alloc_nofault+0x44
> > > > vm_thread_new() at vm_thread_new+0x44
> > > > thread_init() at thread_init+0x8
> > > > slab_zalloc() at slab_zalloc+0x264
> > > > uma_zone_slab() at uma_zone_slab+0x1ac
> > > > uma_zalloc_bucket() at uma_zalloc_bucket+0x1b4
> > > > uma_zalloc_arg() at uma_zalloc_arg+0x398
> > > > thread_alloc() at thread_alloc+0x18
> > > > create_thread() at create_thread+0x78
> > > > thr_new() at thr_new+0x64
> > > > syscall() at syscall+0x2dc
> > > > -- syscall (455, FreeBSD ELF64, thr_new) %o7=3D0x40348e7c --
> > >
> > > It may be a deeper vm problem.
> > >
> > > Kris
> >
> > _______________________________________________
> > freebsd-sparc64@freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
> > To unsubscribe, send any mail to "freebsd-sparc64-unsubscribe@freebsd.o=
rg"
>
> --
> John Baldwin <jhb@FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
> "Power Users Use the Power to Serve" =3D http://www.FreeBSD.org
>



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