aboutsummaryrefslogtreecommitdiff
path: root/posix
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-08-06 11:14:32 -0300
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>2017-08-14 10:35:14 -0300
commit1f14d0c3ddce47f7021bbc0862fdb207891345dc (patch)
treee9cd7c8c6d0e8ab19422f6513ae6b5c4ed65c974 /posix
parentfbdc1e3e8de7f49e439b6e274d3e7e07da78416e (diff)
downloadglibc-1f14d0c3ddce47f7021bbc0862fdb207891345dc.tar
glibc-1f14d0c3ddce47f7021bbc0862fdb207891345dc.tar.gz
glibc-1f14d0c3ddce47f7021bbc0862fdb207891345dc.tar.bz2
glibc-1f14d0c3ddce47f7021bbc0862fdb207891345dc.zip
posix: Fix mmap for m68k and ia64 (BZ#21908)
Default semantic for mmap2 syscall is to take the offset in 4096-byte units. However m68k and ia64 mmap2 implementation take in the configured pageunit units and for both architecture it can be different values. This patch fixes the m68k runtime discover of mmap2 offset unit and adds the ia64 definition to find it at runtime. Checked the basic tst-mmap and tst-mmap-offset on m68k (the system is configured with 4k, so current code is already passing on this system) and a sanity check on x86_64-linux-gnu (which should not be affected by this change). Sergei also states that ia64 loader now work correctly with this change. Adhemerval Zanella <adhemerval.zanella@linaro.org> Sergei Trofimovich <slyfox@inbox.ru> * sysdeps/unix/sysv/linux/m68k/mmap_internal.h (MMAP2_PAGE_SHIFT): Rename to MMAP2_PAGE_UNIT. * sysdeps/unix/sysv/linux/mmap.c: Include mmap_internal iff __OFF_T_MATCHES_OFF64_T is not defined. * sysdeps/unix/sysv/linux/mmap_internal.h (page_unit): Declare as uint64_t. (MMAP2_PAGE_UNIT) [MMAP2_PAGE_UNIT == -1]: Redefine to page_unit. (page_unit) [MMAP2_PAGE_UNIT != -1]: Remove definition.
Diffstat (limited to 'posix')
0 files changed, 0 insertions, 0 deletions