NetBSD Problem Report #50233

From www@NetBSD.org  Fri Sep 11 17:56:49 2015
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [149.20.53.66])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(Client CN "mail.netbsd.org", Issuer "Postmaster NetBSD.org" (verified OK))
	by mollari.NetBSD.org (Postfix) with ESMTPS id D2395A6558
	for <gnats-bugs@gnats.NetBSD.org>; Fri, 11 Sep 2015 17:56:48 +0000 (UTC)
Message-Id: <20150911175647.D3AC5A65C8@mollari.NetBSD.org>
Date: Fri, 11 Sep 2015 17:56:47 +0000 (UTC)
From: senfriend@gmail.com
Reply-To: senfriend@gmail.com
To: gnats-bugs@NetBSD.org
Subject: pmap_growkernel function crashed
X-Send-Pr-Version: www-1.0

>Number:         50233
>Notify-List:    bsiegert@NetBSD.org
>Category:       port-arm32
>Synopsis:       pmap_growkernel function crashed
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    port-arm32-maintainer
>State:          open
>Class:          support
>Submitter-Id:   net
>Arrival-Date:   Fri Sep 11 18:00:00 +0000 2015
>Closed-Date:    
>Last-Modified:  Tue Aug 06 16:33:26 +0000 2019
>Originator:     Senthil K
>Release:        NetBSD 5.1
>Organization:
Aricent
>Environment:
NetBSD 5.1
>Description:
We have observed the crash in uvm_map_prepare function.

 if (map == kernel_map && uvm_maxkaddr < (start + size))
        {
                    uvm_maxkaddr = pmap_growkernel(start + size;
 }
Added the trace inside the if statement. Its looks strange. 
uvm_maxkaddr = 0xffff ffff.
start = start=0xd5b00000, size=4096 

With the above value, the condition is false. but the its going inside if condition and crashed.


db> bt
0xd57da7e4: netbsd:vpanic+0xc
0xd57da7fc: netbsd:panic+0x28
0xd57da838: netbsd:lockdebug_abort+0x38
0xd57da8dc: netbsd:rw_vector_enter+0x20c
0xd57daa00: netbsd:uvm_fault_internal+0xd0
0xd57daa7c: netbsd:data_abort_handler+0x3d8
0xd57dab1c: netbsd:address_exception_entry+0x50
0xd57dab68: netbsd:uvm_map_prepare+0x284
0xd57dabcc: netbsd:uvm_map+0xc4
0xd57dac00: netbsd:km_vacache_alloc+0x60
0xd57dac30: netbsd:pool_grow+0x38
0xd57dac5c: netbsd:pool_get+0x12c

>How-To-Repeat:
N/A
>Fix:

>Release-Note:

>Audit-Trail:

State-Changed-From-To: open->feedback
State-Changed-By: bsiegert@NetBSD.org
State-Changed-When: Mon, 20 Aug 2018 18:11:14 +0000
State-Changed-Why:
NetBSD 5 is end of life. Is this still an issue?


State-Changed-From-To: feedback->open
State-Changed-By: maya@NetBSD.org
State-Changed-When: Tue, 06 Aug 2019 16:33:26 +0000
State-Changed-Why:
This is still an issue from code inspection. pmap_growkernel possibly failing is a cross-platform issue.
I am keeping the arm32 bug open despite there being one for x86 because pmap_growkernel is different for arm32.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.43 2018/01/16 07:36:43 maya Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2017 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.