Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Thu, 4 Jun 2020 21:36:37 +0200
From: erny hombre <>
Subject: Data abort in __set_thread_area

I am writing an operating system for an ARM processor (Cortex-A9). For the user programs I want to use musl libc. I have built a toolchain with musl-cross-make (musl 1.2.0). I can link a user program with libc.a. After loading the program, I call _start. Then I run into a data abort in function __set_thread_area (/musl-1.2.0/src/env/__libc_start_main.c) at this statement:
int ver = *(int *)0xffff0ffc;
The data abort is reasonable, because no memory is mapped at this virtual address. I don't know what's the purpose of this code. Can anybody explain me what this function does and which environment is needed to make it work ?

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.