From owner-svn-src-all@freebsd.org Thu Dec 8 16:31:39 2016 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6D09FC6DBC9; Thu, 8 Dec 2016 16:31:39 +0000 (UTC) (envelope-from alc@rice.edu) Received: from pp2.rice.edu (proofpoint2.mail.rice.edu [128.42.201.101]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3212D19D5; Thu, 8 Dec 2016 16:31:38 +0000 (UTC) (envelope-from alc@rice.edu) Received: from pps.filterd (pp2.rice.edu [127.0.0.1]) by pp2.rice.edu (8.16.0.17/8.16.0.17) with SMTP id uB8EJSB3018170; Thu, 8 Dec 2016 09:38:59 -0600 Received: from mh1.mail.rice.edu (mh1.mail.rice.edu [128.42.201.20]) by pp2.rice.edu with ESMTP id 276usxg91g-1; Thu, 08 Dec 2016 09:38:59 -0600 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 65D1F46014D; Thu, 8 Dec 2016 09:38:59 -0600 (CST) Subject: Re: svn commit: r309703 - in head/sys: amd64/amd64 arm64/arm64 i386/i386 vm To: Slawa Olhovchenkov , Alan Cox References: <201612080429.uB84TToV048828@repo.freebsd.org> <20161208130110.GQ57876@zxy.spb.ru> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Alan Cox Message-ID: <9d908236-8875-c03a-fca5-b7a140042fa9@rice.edu> Date: Thu, 8 Dec 2016 09:38:58 -0600 User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: <20161208130110.GQ57876@zxy.spb.ru> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 suspectscore=3 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1609300000 definitions=main-1611190142 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 08 Dec 2016 16:31:39 -0000 On 12/08/2016 07:01, Slawa Olhovchenkov wrote: > On Thu, Dec 08, 2016 at 04:29:29AM +0000, Alan Cox wrote: > >> Author: alc >> Date: Thu Dec 8 04:29:29 2016 >> New Revision: 309703 >> URL: https://svnweb.freebsd.org/changeset/base/309703 >> >> Log: >> Previously, vm_radix_remove() would panic if the radix trie didn't >> contain a vm_page_t at the specified index. However, with this >> change, vm_radix_remove() no longer panics. Instead, it returns NUL= L >> if there is no vm_page_t at the specified index. Otherwise, it >> returns the vm_page_t. The motivation for this change is that it >> simplifies the use of radix tries in the amd64, arm64, and i386 pmap= >> implementations. Instead of performing a lookup before every remove= , >> the pmap can simply perform the remove. > Is this performance improvement? > > In that it reduces the number of radix trie operations performed by the pmap, yes. However, radix tries are only used in the pmap to store page table pages that were formerly used by now promoted superpages, so the net effect is going to be small.