From owner-freebsd-arm@FreeBSD.ORG Thu Jun 12 19:11:29 2014 Return-Path: Delivered-To: arm@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F28AEDDD; Thu, 12 Jun 2014 19:11:28 +0000 (UTC) Received: from pp2.rice.edu (proofpoint2.mail.rice.edu [128.42.201.101]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B38FD2F20; Thu, 12 Jun 2014 19:11:27 +0000 (UTC) Received: from pps.filterd (pp2.rice.edu [127.0.0.1]) by pp2.rice.edu (8.14.5/8.14.5) with SMTP id s5CJ7aS5016938; Thu, 12 Jun 2014 14:11:20 -0500 Received: from mh1.mail.rice.edu (mh1.mail.rice.edu [128.42.201.20]) by pp2.rice.edu with ESMTP id 1mfh28g1tf-1; Thu, 12 Jun 2014 14:11:20 -0500 X-Virus-Scanned: by amavis-2.7.0 at mh1.mail.rice.edu, auth channel Received: from 108-254-203-201.lightspeed.hstntx.sbcglobal.net (108-254-203-201.lightspeed.hstntx.sbcglobal.net [108.254.203.201]) (using TLSv1 with cipher RC4-MD5 (128/128 bits)) (No client certificate requested) (Authenticated sender: alc) by mh1.mail.rice.edu (Postfix) with ESMTPSA id 0BF0C460203; Thu, 12 Jun 2014 14:11:20 -0500 (CDT) Message-ID: <5399FB57.8090102@rice.edu> Date: Thu, 12 Jun 2014 14:11:19 -0500 From: Alan Cox User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Hans Petter Selasky , Ian Lepore Subject: Re: RPI-B VM panic References: <539170AA.2000109@selasky.org> <5396947A.1060601@selasky.org> <5396A0D1.80309@selasky.org> <5396AF63.6040209@selasky.org> <8BA66A45-E08A-475D-A1FA-5047E862681E@rice.edu> <5398B6EA.9030408@selasky.org> <5398BFD9.60502@selasky.org> <7390A211-C949-4079-B3DA-BF23798B8992@rice.edu> <539942C0.5010706@selasky.org> <5399DF7F.4010501@rice.edu> <5399E349.5050600@selasky.org> <1402594327.20883.216.camel@revolution.hippie.lan> <5399E660.5050207@selasky.org> <5399E901.1080805@selasky.org> In-Reply-To: <5399E901.1080805@selasky.org> X-Enigmail-Version: 1.6 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 kscore.is_bulkscore=0 kscore.compositescore=0 circleOfTrustscore=0 compositescore=0.248919945447816 urlsuspect_oldscore=0.248919945447816 suspectscore=11 recipient_domain_to_sender_totalscore=0 phishscore=0 bulkscore=0 kscore.is_spamscore=0 recipient_to_sender_totalscore=0 recipient_domain_to_sender_domain_totalscore=0 rbsscore=0.248919945447816 spamscore=0 recipient_to_sender_domain_totalscore=0 urlsuspectscore=0.9 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=7.0.1-1402240000 definitions=main-1406120223 Cc: "arm@freebsd.org" X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Jun 2014 19:11:29 -0000 On 06/12/2014 12:53, Hans Petter Selasky wrote: > On 06/12/14 19:41, Hans Petter Selasky wrote: >> On 06/12/14 19:32, Ian Lepore wrote: >>> On Thu, 2014-06-12 at 19:28 +0200, Hans Petter Selasky wrote: >>>> On 06/12/14 19:12, Alan Cox wrote: >>>>> On 06/12/2014 01:03, Hans Petter Selasky wrote: >>>>>> On 06/11/14 22:47, Alan Cox wrote: >>>>>>> >>>>>>> On Jun 11, 2014, at 3:45 PM, Hans Petter Selasky wrote: >>>>>>> >>>>>>>> On 06/11/14 22:20, Alan Cox wrote: >>>>>>>>> >>>>>>>>> On Jun 11, 2014, at 3:07 PM, Hans Petter Selasky wrote: >>>>>>>>> >>>>>>>>>> kernel: file format elf32-littlearm >>>>>>>>>> >>>>>>>>> >>>>>>>>> Then this problem is unrelated to the one that I just fixed. >>>>>>>>> It's >>>>>>>>> also not a problem that I've seen before. >>>>>>>> >>>>>>>> It is happening after your recent patches to -current, optimising >>>>>>>> the "page ordering". Happens every now and then during boot when >>>>>>>> stack is growing looks like. >>>>>>> >>>>>>> More precisely, which commit is that? >>>>>>> >>>>>> >>>>>>> commit 7d20e37fb658b0e2cd7f3c13dac8022e0e866a21 >>>>>>> Author: alc >>>>>>> Date: Sun May 12 16:50:18 2013 +0000 >>>>>>> >>>>>>> Refactor vm_page_alloc()'s interactions with >>>>>>> vm_reserv_alloc_page() and >>>>>>> vm_page_insert() so that (1) vm_radix_lookup_le() is never >>>>>>> called >>>>>>> while the >>>>>>> free page queues lock is held and (2) vm_radix_lookup_le() is >>>>>>> called at most >>>>>>> once. This change reduces the average time that the free >>>>>>> page >>>>>>> queues lock >>>>>>> is held by vm_page_alloc() as well as vm_page_alloc()'s >>>>>>> average >>>>>>> overall >>>>>>> running time. >>>>>>> >>>>>>> Sponsored by: EMC / Isilon Storage Division >>>>>>> >>>>>> >>>>>> >>>>> >>>>> That's not exactly a recent commit. It was 13 months ago. And, this >>>>> code is exercised by all page allocations except for page table pages >>>>> and uma_small_alloc(). >>>>> >>>>> What this assertion is telling us is that somewhere else we have >>>>> screwed >>>>> up the vm object to which we are now trying to allocate a page. >>>>> >>>>> Try the attached patch. It will provide additional information the >>>>> next >>>>> time that the assertion fails. >>>>> >>>> >>>> Here you go: >>>> >>>>> panic: vm_page_insert_after: msucc 0xc0993e50 (0) doesn't succeed >>>>> pindex 4 >>>>> object 0xc1a2b140 type 0 >>>>> KDB: enter: panic >>>>> [ thread pid 18 tid 100052 ] >>>>> Stopped at $d: ldrb r15, [r15, r15, ror r15]! >>>>> db> >>> >>> Could this be related to changing superpages to enabled by default >>> recently? Easy to test by setting vm.pmap.sp_enabled=0 in ubldr >>> >> >> Setting the sp_enabled to 0 does not fix the problem. >> >> --HPS > > Output from the debugger regarding the object: > >> panic: vm_page_insert_after: msucc 0xc0993e50 (0) doesn't succeed >> pindex 4 >> object 0xc1a2b1e0 type 0 >> KDB: enter: panic > >> db> show vmochk >> vmochk: internal obj is not in a map: ref: 1, size: 2: 0x2, >> backing_object: 0 >> vmochk: internal obj is not in a map: ref: 1, size: 2: 0x2, >> backing_object: 0 > Use the ddb command "object", not "vmochk". > .... > >> db> show vmopag > > .... > >> new object: 0xc1a2b1e0 >> index(0)run(1)pa(0x1766000) >> index(1)run(1)pa(0x1e17000) >> index(2)run(2)pa(0x1772000) >> index(4)run(1)pa(0x1e6a000) >> index(5)run(2)pa(0x1775000) >> index(7)run(1)pa(0x1778000) >> index(8)run(1)pa(0x1788000) >> index(9)run(1)pa(0x17e9000) > > --HPS > > >