summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@qt.io>2017-02-15 15:28:38 +0100
committerMark Wielaard <mark@klomp.org>2017-02-15 15:32:45 +0100
commitcb379c4d7859848572c224f7bebd107b02adcfd6 (patch)
tree0b75974d35218d57f796574c0507f1b04a4bc430
parent29173849c445b178a97e400c071f25629a4f8b9f (diff)
downloadelfutils-cb379c4d7859848572c224f7bebd107b02adcfd6.tar.gz
Always use the same method to query the system page size
This makes it easier to write a replacement for it on systems where sysconf(3) doesn't exist. Signed-off-by: Ulf Hermann <ulf.hermann@qt.io>
-rw-r--r--lib/ChangeLog4
-rw-r--r--lib/crc32_file.c2
-rw-r--r--libdwfl/ChangeLog5
-rw-r--r--libdwfl/linux-kernel-modules.c2
-rw-r--r--libdwfl/linux-proc-maps.c2
5 files changed, 12 insertions, 3 deletions
diff --git a/lib/ChangeLog b/lib/ChangeLog
index 5ccf4d6b..6578ddba 100644
--- a/lib/ChangeLog
+++ b/lib/ChangeLog
@@ -1,3 +1,7 @@
+2017-02-15 Ulf Hermann <ulf.hermann@qt.io>
+
+ * crc32_file.c: Use _SC_PAGESIZE rather than _SC_PAGE_SIZE.
+
2017-02-14 Ulf Hermann <ulf.hermann@qt.io>
* color.h: New file.
diff --git a/lib/crc32_file.c b/lib/crc32_file.c
index 57e42980..f7607d0b 100644
--- a/lib/crc32_file.c
+++ b/lib/crc32_file.c
@@ -53,7 +53,7 @@ crc32_file (int fd, uint32_t *resp)
void *mapped = mmap (NULL, mapsize, PROT_READ, MAP_PRIVATE, fd, 0);
if (mapped == MAP_FAILED && errno == ENOMEM)
{
- const size_t pagesize = sysconf (_SC_PAGE_SIZE);
+ const size_t pagesize = sysconf (_SC_PAGESIZE);
mapsize = ((mapsize / 2) + pagesize - 1) & -pagesize;
while (mapsize >= pagesize
&& (mapped = mmap (NULL, mapsize, PROT_READ, MAP_PRIVATE,
diff --git a/libdwfl/ChangeLog b/libdwfl/ChangeLog
index 57671eaf..52466cc3 100644
--- a/libdwfl/ChangeLog
+++ b/libdwfl/ChangeLog
@@ -1,3 +1,8 @@
+2017-02-15 Ulf Hermann <ulf.hermann@qt.io>
+
+ * linux-kernel-modules.c: Use sysconf(_SC_PAGESIZE) to get page size.
+ * linux-proc-maps.c: Likewise.
+
2016-12-29 Luiz Angelo Daros de Luca <luizluca@gmail.com>
* dwfl_build_id_find_elf.c: Include system.h.
diff --git a/libdwfl/linux-kernel-modules.c b/libdwfl/linux-kernel-modules.c
index 9cd8ea93..a7ac19d2 100644
--- a/libdwfl/linux-kernel-modules.c
+++ b/libdwfl/linux-kernel-modules.c
@@ -500,7 +500,7 @@ intuit_kernel_bounds (Dwarf_Addr *start, Dwarf_Addr *end, Dwarf_Addr *notes)
if (*notes == 0 && !strcmp (state.p, "__start_notes\n"))
*notes = *end;
- Dwarf_Addr round_kernel = sysconf (_SC_PAGE_SIZE);
+ Dwarf_Addr round_kernel = sysconf (_SC_PAGESIZE);
*start &= -(Dwarf_Addr) round_kernel;
*end += round_kernel - 1;
*end &= -(Dwarf_Addr) round_kernel;
diff --git a/libdwfl/linux-proc-maps.c b/libdwfl/linux-proc-maps.c
index 4ae1e74a..094dd53d 100644
--- a/libdwfl/linux-proc-maps.c
+++ b/libdwfl/linux-proc-maps.c
@@ -418,7 +418,7 @@ dwfl_linux_proc_find_elf (Dwfl_Module *mod __attribute__ ((unused)),
if (fd < 0)
goto detach;
- *elfp = elf_from_remote_memory (base, getpagesize (), NULL,
+ *elfp = elf_from_remote_memory (base, sysconf (_SC_PAGESIZE), NULL,
&read_proc_memory, &fd);
close (fd);