From owner-freebsd-arm@FreeBSD.ORG Wed Apr 17 15:37:37 2013 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 56AAB90E for ; Wed, 17 Apr 2013 15:37:37 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-qa0-f53.google.com (mail-qa0-f53.google.com [209.85.216.53]) by mx1.freebsd.org (Postfix) with ESMTP id 151F0FB6 for ; Wed, 17 Apr 2013 15:37:36 +0000 (UTC) Received: by mail-qa0-f53.google.com with SMTP id p6so940241qad.19 for ; Wed, 17 Apr 2013 08:37:29 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:sender:subject:mime-version:content-type:from :in-reply-to:date:cc:content-transfer-encoding:message-id:references :to:x-mailer:x-gm-message-state; bh=zcsWYk14FO+RQdbDw95HmgV/cs0xAHjrg1flajXEY1Q=; b=lYVA96VirRNbiJAvpvJt5NQ1RDzchIvufWFznQVgkk+VJ+MhyjM//teTqZbl0GCAWu dsMujbwiwgbGdGY64FndKS7nVmh8dwZU+8Oq5voq0McHhtXEhDB0YXUMqNLoacN8siVr Eid6Vp7RibP9ItuCI/VgTXk0o9CQuC2Y9rm6dfxxAlNkyVySKw+SH1SGv2vvdP6UjHnZ uY0aWRqsgIA9k5S0+H38sgq/1tQGuEBcDgP8AVeCdNP9C8D4cCPCcWULn6CWXTiL1iaU Du4YnP8+b+p8HC/8fx9v7pCOnJYjs5KNmFCEJcArFS4zLJuLw3KzQ2Iv9XFMkN1jCs38 U+tg== X-Received: by 10.49.104.6 with SMTP id ga6mr7893255qeb.51.1366213049866; Wed, 17 Apr 2013 08:37:29 -0700 (PDT) Received: from monkey-bot.int.fusionio.com ([209.117.142.2]) by mx.google.com with ESMTPS id g6sm8583748qav.6.2013.04.17.08.37.27 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 17 Apr 2013 08:37:28 -0700 (PDT) Sender: Warner Losh Subject: Re: __rw_wlock_hard panic on 1st malloc Mime-Version: 1.0 (Apple Message framework v1085) Content-Type: text/plain; charset=us-ascii From: Warner Losh In-Reply-To: <92C60946-8FFB-46A1-9400-9E0F7B11FC23@gmail.com> Date: Wed, 17 Apr 2013 09:37:26 -0600 Content-Transfer-Encoding: quoted-printable Message-Id: <9A3C042F-3765-4791-AB51-63EA82488743@bsdimp.com> References: <8DE83B01-4508-41C5-B2BD-95A72D0AD963@bsdimp.com> <92C60946-8FFB-46A1-9400-9E0F7B11FC23@gmail.com> To: Damjan Marion X-Mailer: Apple Mail (2.1085) X-Gm-Message-State: ALoCoQn5y6O64s10+iS+ET02gL38PtwZmupNTl1O5GfejeUVutfyqhrhTpGh4eSk/jKU0ieiwFxi Cc: "freebsd-arm@FreeBSD.org" X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Apr 2013 15:37:37 -0000 I don't think it is, at least not with clang compiled code. Ian was = saying on IRC that he saw this and went back to gcc and life was good. Warner On Apr 16, 2013, at 5:44 PM, Damjan Marion wrote: >=20 > When I apply your patch I'm getting the same error but this time in = busdma_init(). > Again it is 1st malloc() inside busdma_bufalloc_create(). >=20 > Can anybody confirm that latest HEAD is working on other Cortex-A = CPUs? >=20 > Damjan >=20 > On Apr 17, 2013, at 12:43 AM, Warner Losh wrote: >=20 >> The problem here is a double fault. The first fault is in = init_dynamic_kenv when we try to read the kernel environment. The second = fault happens because we don't wind up in the debugger (I think due to = reading the stack goes awry). >>=20 >> I've fixed the first problem in r249570. >>=20 >> Not sure what's going on beyond that, since after fixing that I hit a = similar issue in stack_copy() but without a traceback, it is kinda hard. >>=20 >> This is on my MarsBoard with an allwinner tech's A10 CPU. >>=20 >> Warner >>=20 >>=20 >> On Apr 14, 2013, at 12:51 PM, Damjan Marion wrote: >>=20 >>>=20 >>> I doubt. init_dynamic_kenv() is called by sysinit as part of = standard sysinit sequence and=20 >>> it is called after kmeminit(). >>>=20 >>> There is no my custom code except standard parts of initarm = initialisation. >>>=20 >>> Damjan >>>=20 >>> On Apr 14, 2013, at 7:19 PM, Warner Losh wrote: >>>=20 >>>> Maybe you are calling malloc before these locks are initialized? >>>>=20 >>>> Warner >>>>=20 >>>> On Apr 14, 2013, at 5:03 AM, Damjan Marion wrote: >>>>=20 >>>>>=20 >>>>> Hi, >>>>>=20 >>>>> I'm playing a bit with i.MX6 based board (wandboard) and I have = serial console working but >>>>> now it panics in init_dynamic_kenv() with the following error: >>>>>=20 >>>>> panic: __rw_wlock_hard: recursing but non-recursive rw pmap pv = global @ /usr/src/sys/arm/arm/pmap-v6.c:1187 >>>>>=20 >>>>> It looks like this is the 1st place where malloc() is called, an = malloc returns valid VA >>>>> but 1st attempt to access that address produces panic above. >>>>>=20 >>>>> Any idea what can be the reason for this or any other hint? >>>>>=20 >>>>> Thanks, >>>>>=20 >>>>> Damjan >>>>> _______________________________________________ >>>>> freebsd-arm@freebsd.org mailing list >>>>> http://lists.freebsd.org/mailman/listinfo/freebsd-arm >>>>> To unsubscribe, send any mail to = "freebsd-arm-unsubscribe@freebsd.org" >>>>=20 >>>=20 >>=20 >=20