Skip to content

Commit

Permalink
Fix SIGSEGV while marking some special proc mapping (E2K)
Browse files Browse the repository at this point in the history
Issue #413 (bdwgc).

* dyn_load.c [(SCO_ELF || DGUX || HURD || NACL || __ELF__ && (LINUX
|| FREEBSD || NETBSD || OPENBSD)) && USE_PROC_FOR_LIBRARIES && E2K
&& __ptr64__] (GC_register_map_entries): Skip c2fffffff000-c30000000000
anonymous writable section; add TODO.
  • Loading branch information
ivmai committed Feb 2, 2022
1 parent 2fb8c63 commit abc119c
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions dyn_load.c
Original file line number Diff line number Diff line change
Expand Up @@ -334,6 +334,12 @@ STATIC void GC_register_map_entries(const char *maps)
/* Stack mapping; discard */
continue;
}
# if defined(E2K) && defined(__ptr64__)
/* TODO: avoid hard-coded addresses */
if ((word)start == 0xc2fffffff000UL
&& (word)end == 0xc30000000000UL && path[0] == '\n')
continue; /* discard some special mapping */
# endif
if (path[0] == '[' && strncmp(path+1, "heap]", 5) != 0)
continue; /* discard if a pseudo-path unless "[heap]" */

Expand Down

0 comments on commit abc119c

Please sign in to comment.