Re: Non-linear Remap Vs. VM Cleanup: Performance Hit

From: Kirill A. Shutemov
Date: Fri Feb 27 2015 - 10:39:19 EST


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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/