A typical library has a text (r-x code segment) and a data (rw-) mapping. Newer binutils align segments at 2MB boundaries. rtld-elf "reserves" space for the entire object by mapping all segments, including alignment space, as PROT_NONE, before proceeding to map specific segments with appropriate protection.
This patch unmaps the unused/PROT_NONE alignment areas of VM between valid segments of libraries, which reduces userspace VM bloat by up to 2MB per typical library.
Sponsored by: EMC / Isilon storage division