patches/glibc/ports-2.13/190-localedef-mmap.patch
author "Yann E. MORIN" <yann.morin.1998@free.fr>
Sun May 05 00:01:05 2013 +0200 (2013-05-05)
changeset 3218 3709e61ad85b
permissions -rw-r--r--
complibs/cloog: add support for the ISL backend

CLooG 0.18+ will use ISL instead of PPL, so we have to configure
adequately depending of which backend is in use.

The Kconfig entries will decide for us which is selected, so we
can rely on either PPL xor ISL to be selected, not both.

Reported-by: "Plotnikov Dmitry" <leitz@ispras.ru>
[Dmitry did a preliminray patch to add ISL support,
which this patch is inspired from]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
     1 sniped from Debian
     2 http://bugs.gentoo.org/289615
     3 
     4 2009-10-27  Aurelien Jarno  <aurelien@aurel32.net>
     5 
     6 	* locale/programs/locarchive.c: use MMAP_SHARED to reserve memory
     7 	used later with MMAP_FIXED | MMAP_SHARED to cope with different
     8 	alignment restrictions.
     9 
    10 diff -durN glibc-2.13.orig/locale/programs/locarchive.c glibc-2.13/locale/programs/locarchive.c
    11 --- glibc-2.13.orig/locale/programs/locarchive.c	2009-04-27 16:07:47.000000000 +0200
    12 +++ glibc-2.13/locale/programs/locarchive.c	2009-11-13 00:50:01.000000000 +0100
    13 @@ -134,7 +134,7 @@
    14    size_t reserved = RESERVE_MMAP_SIZE;
    15    int xflags = 0;
    16    if (total < reserved
    17 -      && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON,
    18 +      && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON,
    19  		       -1, 0)) != MAP_FAILED))
    20      xflags = MAP_FIXED;
    21    else
    22 @@ -396,7 +396,7 @@
    23    size_t reserved = RESERVE_MMAP_SIZE;
    24    int xflags = 0;
    25    if (total < reserved
    26 -      && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON,
    27 +      && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON,
    28  		       -1, 0)) != MAP_FAILED))
    29      xflags = MAP_FIXED;
    30    else
    31 @@ -614,7 +614,7 @@
    32    int xflags = 0;
    33    void *p;
    34    if (st.st_size < reserved
    35 -      && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_PRIVATE | MAP_ANON,
    36 +      && ((p = mmap64 (NULL, reserved, PROT_NONE, MAP_SHARED | MAP_ANON,
    37  		       -1, 0)) != MAP_FAILED))
    38      xflags = MAP_FIXED;
    39    else