From owner-freebsd-arm@FreeBSD.ORG Thu Mar 26 23:51:25 2015 Return-Path: Delivered-To: freebsd-arm@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9A0594B3 for ; Thu, 26 Mar 2015 23:51:25 +0000 (UTC) Received: from relay.mailchannels.net (tkt-001-i373.relay.mailchannels.net [174.136.5.175]) by mx1.freebsd.org (Postfix) with ESMTP id C331BE53 for ; Thu, 26 Mar 2015 23:51:24 +0000 (UTC) X-Sender-Id: duocircle|x-authuser|hippie Received: from smtp7.ore.mailhop.org (ip-10-213-14-133.us-west-2.compute.internal [10.213.14.133]) by relay.mailchannels.net (Postfix) with ESMTPA id 82392A0156 for ; Thu, 26 Mar 2015 23:45:08 +0000 (UTC) X-Sender-Id: duocircle|x-authuser|hippie Received: from smtp7.ore.mailhop.org (smtp7.ore.mailhop.org [10.83.15.107]) (using TLSv1 with cipher DHE-RSA-AES256-SHA) by 0.0.0.0:2500 (trex/5.4.8); Thu, 26 Mar 2015 23:45:08 +0000 X-MC-Relay: Neutral X-MailChannels-SenderId: duocircle|x-authuser|hippie X-MailChannels-Auth-Id: duocircle X-MC-Loop-Signature: 1427413508596:2437874036 X-MC-Ingress-Time: 1427413508595 Received: from c-73-34-117-227.hsd1.co.comcast.net ([73.34.117.227] helo=ilsoft.org) by smtp7.ore.mailhop.org with esmtpsa (TLSv1.2:DHE-RSA-AES256-GCM-SHA384:256) (Exim 4.82) (envelope-from ) id 1YbHSU-00018u-Gu for freebsd-arm@FreeBSD.org; Thu, 26 Mar 2015 23:45:06 +0000 Received: from revolution.hippie.lan (revolution.hippie.lan [172.22.42.240]) by ilsoft.org (8.14.9/8.14.9) with ESMTP id t2QNj2c9048324 for ; Thu, 26 Mar 2015 17:45:02 -0600 (MDT) (envelope-from ian@freebsd.org) X-Mail-Handler: DuoCircle Outbound SMTP X-Originating-IP: 73.34.117.227 X-Report-Abuse-To: abuse@duocircle.com (see https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information for abuse reporting information) X-MHO-User: U2FsdGVkX1/JRtCs3MGYDn6AW7c9yQ7w Message-ID: <1427413502.8776.10.camel@freebsd.org> Subject: ARM_NEW_PMAP From: Ian Lepore To: "freebsd-arm@FreeBSD.org" Date: Thu, 26 Mar 2015 17:45:02 -0600 Content-Type: text/plain; charset="us-ascii" X-Mailer: Evolution 3.12.10 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-AuthUser: hippie X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Mar 2015 23:51:25 -0000 With commit r280712, we now have a new alternate implementation of the arm pmap code available (the low-level part of virtual memory handling). Right now it's disabled by default; if you'd like to help test it, add to your kernel config: options ARM_NEW_PMAP This new implementation is a complete rewrite, but is modeled after the mature and well-tested i386 pmap code. In the testing I've done over the past few days I've noticed some performance improvement (a 12-minute kernel build on a wandboard quad is now 10 minutes). Even more than performance, though, this new code should bring us better stability. My testing showed that this does fix the "no l2 bucket..." panic that showed up recently. If you need to check whether the new or old code is running on a system, use "sysctl vm.pmap.pte1.promotions", if that gives an "unknown oid" error you're running the old code. Big Thanks go to Svata Kraus and Michal Meloun who contributed this code (along with an embarrassed apology that it took 2 years to get it committed). -- Ian