From owner-freebsd-arm@FreeBSD.ORG Thu Apr 18 00:03:40 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 6304E5AE for ; Thu, 18 Apr 2013 00:03:40 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-gg0-x230.google.com (mail-gg0-x230.google.com [IPv6:2607:f8b0:4002:c02::230]) by mx1.freebsd.org (Postfix) with ESMTP id 2320FEBF for ; Thu, 18 Apr 2013 00:03:40 +0000 (UTC) Received: by mail-gg0-f176.google.com with SMTP id c4so356463ggn.21 for ; Wed, 17 Apr 2013 17:03:39 -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=sLUi6iWqzo9/IT/SyTPiIKYM7MLA5EsyLebSVIyQuAw=; b=cIjK1Kus81crBY0kO05vS2dlcUfT2Wv/2HKFivo8bJum1mspm089+dl1BnZqvl6E7g AXVKqRMV1v6qMJvMg3ieab6tmQwhdaEB8/8Ouy2xiFIfKyrSt2PtlYlKhDeR45dva6kY x+yUTcB10F3QTicQ4jcQ3nkc5oue2+gjH9E0dyEXI2DudZAojpsFpztqdiRoT4yudx1p MbQpGd74JDMpBP3Z52YD7TxojdcN7Jfk6gbDsDXQuaAe1rPJ/P6Ov7DZq8jM2QGDK/Nx DPzcfFxGUCLDal+6b9nDErMLstjN1Pg64wa/du+HnxE1V2maL2+qBJtLnO7ZtSE/ea0L fKkw== X-Received: by 10.236.102.207 with SMTP id d55mr5674380yhg.82.1366241595299; Wed, 17 Apr 2013 16:33:15 -0700 (PDT) Received: from monkey-bot.int.fusionio.com ([209.117.142.2]) by mx.google.com with ESMTPS id b78sm12895429yhi.2.2013.04.17.16.33.13 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 17 Apr 2013 16:33:14 -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: <8550022A-E05B-4CEA-B899-3D81DDCC9B57@gmail.com> Date: Wed, 17 Apr 2013 17:33:11 -0600 Content-Transfer-Encoding: quoted-printable Message-Id: References: <8DE83B01-4508-41C5-B2BD-95A72D0AD963@bsdimp.com> <92C60946-8FFB-46A1-9400-9E0F7B11FC23@gmail.com> <9A3C042F-3765-4791-AB51-63EA82488743@bsdimp.com> <8550022A-E05B-4CEA-B899-3D81DDCC9B57@gmail.com> To: Damjan Marion X-Mailer: Apple Mail (2.1085) X-Gm-Message-State: ALoCoQkD/Q6Jlx7K+jkJVaiJ4wQFwsVVlzXEwXMbQMZwAWF84K2B+MXYsqdzudB8OJ5jdYpXAZaa 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: Thu, 18 Apr 2013 00:03:40 -0000 Also, I'm able to get to mountroot> on my allwinner board if I disable = WITNESS, but have all kinds of problems if I don't. And the goofy stack traceback is totally busted for me, so finding out = where I am has been an exercise in frustration. Warner On Apr 17, 2013, at 4:45 PM, Damjan Marion wrote: >=20 > yes, thanks for the hint. After moving back to gcc everything works = fine. >=20 > Damjan >=20 > On Apr 17, 2013, at 5:37 PM, Warner Losh wrote: >=20 >> 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. >>=20 >> Warner >>=20 >> On Apr 16, 2013, at 5:44 PM, Damjan Marion wrote: >>=20 >>>=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 >>=20 >=20