From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754788AbbB0PjQ (ORCPT ); Fri, 27 Feb 2015 10:39:16 -0500 Received: from mta-out1.inet.fi ([62.71.2.203]:35646 "EHLO jenni1.inet.fi" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754128AbbB0PjP (ORCPT ); Fri, 27 Feb 2015 10:39:15 -0500 Date: Fri, 27 Feb 2015 17:39:05 +0200 From: "Kirill A. Shutemov" To: "D. Cooper Stevenson" Cc: linux-kernel@vger.kernel.org Subject: Re: Non-linear Remap Vs. VM Cleanup: Performance Hit Message-ID: <20150227153905.GA12562@node.dhcp.inet.fi> References: <54ECFCE9.9030407@cooper.stevenson.name> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <54ECFCE9.9030407@cooper.stevenson.name> User-Agent: Mutt/1.5.23.1 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Feb 24, 2015 at 02:36:25PM -0800, D. Cooper Stevenson wrote: > Hello All, > > I read the Linus's release for RC1. One of his favorite features in the > release are, "actually some vm cleanups, where this release is getting rid > of the largely unused non-linear remapping code (replaced with just > emulating it with lots of smaller mappings) and unifies the NUMA and > PROTNONE handling for page tables." > > I understand that non-linear page remapping is unused (and, presumably, > reduces the code base size) but according to the remap_file_pages man page > (http://man7.org/linux/man-pages/man2/remap_file_pages.2.html) non-linear > system will be, "eventually be replaced by a slower in-kernel emulation." > > Was this a change of necessity? What gives? As with all cleanups it's not necessary, but it makes life easier. It removed >1.5k lines of non-trivial code from critical path of the kernel. It's rarely used and tend to be error-prone. And developers need to be aware about exists of non-linear mapping while implementing new features. For instance, faultaround feature I've implemented was broken for non-linear mapping for some time and it took time to track it down. -- Kirill A. Shutemov