[PATCH] On elf_update, remember when we mmap()

Ulf Hermann ulf.hermann@qt.io
Thu Apr 20 14:57:00 GMT 2017


Otherwise we skip the munmap() later. This leaks resources.

Signed-off-by: Ulf Hermann <ulf.hermann@qt.io>
---
 libelf/ChangeLog    | 4 ++++
 libelf/elf_update.c | 2 ++
 2 files changed, 6 insertions(+)

diff --git a/libelf/ChangeLog b/libelf/ChangeLog
index fa768f8..225c7c8 100644
--- a/libelf/ChangeLog
+++ b/libelf/ChangeLog
@@ -1,5 +1,9 @@
 2017-04-20  Ulf Hermann  <ulf.hermann@qt.io>
 
+	* elf_update.c: Set ELF_F_MMAPPED flag if we mmap from elf_update.
+
+2017-04-20  Ulf Hermann  <ulf.hermann@qt.io>
+
 	* libelfP.h: Don't include config.h.
 
 2017-04-20  Ulf Hermann  <ulf.hermann@qt.io>
diff --git a/libelf/elf_update.c b/libelf/elf_update.c
index c635eb3..8ce0782 100644
--- a/libelf/elf_update.c
+++ b/libelf/elf_update.c
@@ -74,6 +74,8 @@ write_file (Elf *elf, off_t size, int change_bo, size_t shnum)
 			       MAP_SHARED, elf->fildes, 0);
       if (unlikely (elf->map_address == MAP_FAILED))
 	elf->map_address = NULL;
+      else
+	elf->flags |= ELF_F_MMAPPED;
     }
 
   if (elf->map_address != NULL)
-- 
2.1.4



More information about the Elfutils-devel mailing list