nuttx/include
Ville Juven 9af8b740e6 Elf loader: give temporary write access to user .text memory
When the .elf file is loaded from disk, the kernel must be given write
access to the allocated .text section in the task's address environment.

The access is removed after the elf is loaded and relocations are done.

NOTE:
The reason this works for the ARM implementation, is that the ARM MMU
can be configured to give write access for the privileged mode, but
revoke write access for the user mode.

Regardless, it would be smart to revoke write access even for the
kernel, when the kernel does not need it. This framework allows doing
that, if someone wishes to take up the task.
2022-05-03 21:25:25 +09:00
..
arpa netinet: move the byte ordering convert functions to "netinet/in.h" 2021-06-09 12:04:25 -05:00
cxx environ: Don't expose get_environ_ptr in csdlib 2022-04-21 22:55:47 +03:00
net net: Add lifr_ifindex field to struct lifreq 2021-12-21 11:01:33 -03:00
netinet inculude/netinet:add net mask define 2021-11-27 06:19:10 -06:00
netpacket rpmgs_socket: set RPMSG_SOCKET_NAME_SIZE to 16 for handing prefix 2021-11-04 13:29:51 -05:00
nuttx Elf loader: give temporary write access to user .text memory 2022-05-03 21:25:25 +09:00
ssp add ssp.h 2022-01-29 01:04:23 +08:00
sys Implement preadv and pwritev 2022-04-28 13:40:25 +08:00
.gitignore build: Remve the unnecessary .gitignore 2020-05-23 18:00:40 +01:00
aio.h fs: Change off_t and related types to int64_t if long long is supported 2021-08-04 06:48:30 -07:00
alloca.h include: Author: Gregory Nutt: update licenses to Apache 2.0 2021-02-04 03:33:58 -08:00
assert.h assert: static_assert is not support in c standard C89,C99. 2022-04-21 23:11:21 +08:00
byteswap.h byteswap.h: add byteswap.h header file 2021-08-20 07:47:07 -07:00
crc8.h Increase the function of crc8 to use custom polynomials 2021-07-12 20:33:21 -07:00
crc16.h include: Author: Gregory Nutt: update licenses to Apache 2.0 2021-02-04 03:33:58 -08:00
crc32.h include: Author: Gregory Nutt: update licenses to Apache 2.0 2021-02-04 03:33:58 -08:00
crc64.h include: Omni Hoverboards: update licenses to Apache 2021-09-28 04:37:38 -07:00
ctype.h libc: Implement local_t related functions 2021-07-30 09:43:26 -03:00
debug.h power/battery: add baterr, batinfo, batwarn for debug log 2021-10-26 13:59:42 -03:00
dirent.h fs: Change off_t and related types to int64_t if long long is supported 2021-08-04 06:48:30 -07:00
dlfcn.h include: Author: Gregory Nutt: update licenses to Apache 2.0 2021-02-04 03:33:58 -08:00
dsp.h libdsp: initialize flux_link in params, remove flux_link from pmsm_phy_params 2022-02-20 21:58:10 +08:00
dspb16.h libdsp: port lib_observer.c to b16 2022-02-20 21:58:10 +08:00
elf32.h elf: add elf define of Note Section 2021-11-23 20:34:56 +09:00
elf64.h elf: add elf define of Note Section 2021-11-23 20:34:56 +09:00
elf.h elf: add elf define of Note Section 2021-11-23 20:34:56 +09:00
endian.h endian.h: add prefix for __LITTLE/__BIG_ENDIAN, __BYTE_ODRER 2021-08-20 07:47:07 -07:00
err.h libc/misc/err.c:add err.c to libc 2021-12-07 04:01:27 -08:00
errno.h errno: use staic errno to replace tl_errno before tls initialization 2021-09-12 11:48:31 +08:00
execinfo.h sched/backtrace: Dump the complete stack regardless the depth 2021-12-29 12:09:54 +08:00
fcntl.h vfs: Forward fcntl(F_SETFD...) to ioctl(FIOCLEX|FIONCLEX...) 2022-03-04 22:03:55 +02:00
fixedmath.h include: Author: Gregory Nutt: update licenses to Apache 2.0 2021-02-04 03:33:58 -08:00
fnmatch.h libc: Rename match to fnmatch 2021-08-02 08:23:35 -03:00
ftw.h fs: Change off_t and related types to int64_t if long long is supported 2021-08-04 06:48:30 -07:00
getopt.h Implement getopt_long() and getopt_long_only() 2021-04-01 23:06:23 -05:00
glob.h libc/misc: add lib_glob. 2021-09-25 07:54:39 -03:00
grp.h libs/libc: License Clearance 2021-03-02 03:44:06 -08:00
hex2bin.h libc/hex2bin: Handle the line ending(\r, \n and \r\n) dynamically 2021-11-26 11:55:00 -03:00
ifaddrs.h net: Implement getifaddrs and freeifaddrs 2021-12-21 11:01:33 -03:00
inttypes.h fs: Change off_t and related types to int64_t if long long is supported 2021-08-04 06:48:30 -07:00
iso646.h include: Add iso646.h for alternative spellings 2021-03-04 18:32:12 -08:00
langinfo.h libc: Add the empty nl_langinfo implementation 2021-07-31 15:35:47 -03:00
libgen.h include: Author: Gregory Nutt: update licenses to Apache 2.0 2021-02-04 03:33:58 -08:00
libintl.h libc: Implement gettext function 2021-08-03 12:14:07 -03:00
limits.h unistd:rename CONFIG_OPEN_MAX to CONFIG_LIBC_OPEN_MAX 2022-04-01 22:10:51 +08:00
locale.h libc: Reorder LC_XXX as Linux 2021-07-31 15:35:47 -03:00
lzf.h libc/lzfcompress: add lzf compress stream 2021-12-20 08:39:33 -06:00
malloc.h procfs: add heap info for every task 2022-02-26 14:32:42 +08:00
mqueue.h include: Author: Gregory Nutt: update licenses to Apache 2.0 2021-02-04 03:33:58 -08:00
netdb.h libc/rexec/rexec_af: support remote execution 2021-09-12 21:14:06 +08:00
nl_types.h libc: Support message catalog function 2021-08-02 08:24:59 -03:00
nxflat.h include: Author: Gregory Nutt: update licenses to Apache 2.0 2021-02-04 03:33:58 -08:00
poll.h sched: Add include/sys/poll.h 2021-01-06 14:23:50 +08:00
pthread.h Revert "libc: Call pthread_exit in user-space by up_pthread_exit" 2022-02-09 21:21:43 +08:00
pty.h libc: Implement openpty function 2021-05-12 21:08:23 -07:00
pwd.h libc/pwd: Add NSS_BUFLEN_PASSWD macro 2021-05-11 16:40:33 +01:00
queue.h include: Author: Gregory Nutt: update licenses to Apache 2.0 2021-02-04 03:33:58 -08:00
resolv.h Add dn resolution function 2022-03-17 09:37:15 +02:00
sched.h sched/backtrace: Dump the complete stack regardless the depth 2021-12-29 12:09:54 +08:00
semaphore.h semphore: release all semphores' holder that the task held when exit 2022-02-13 03:20:51 +08:00
signal.h signal: Fix docs and comments related to SIGWORK and its config 2021-06-30 21:22:49 -05:00
spawn.h libc: Implement execvp, execlp and execvpe as macro 2022-04-22 10:40:31 +03:00
stdbool.h include: Author: Gregory Nutt: update licenses to Apache 2.0 2021-02-04 03:33:58 -08:00
stddef.h stddef: Let offset be defined from toolchain 2021-08-27 08:55:45 -07:00
stdint.h stdint.h: Use conversion macros for the definition of MIN and MAX constants 2021-02-18 18:35:35 -08:00
stdio.h include/stdio:add setlinebuf marco 2021-11-29 11:18:36 -06:00
stdlib.h environ: Don't expose get_environ_ptr in csdlib 2022-04-21 22:55:47 +03:00
stdnoreturn.h include: Author: Gregory Nutt: update licenses to Apache 2.0 2021-02-04 03:33:58 -08:00
string.h libc: Change the return type of strerror from "const char *" to "char *" 2022-03-20 23:02:50 +02:00
strings.h Remove the unneeded void cast 2022-04-17 23:32:05 +03:00
syscall.h arch: Remove SYS_RESERVED from Kconfg 2022-02-27 22:54:13 +08:00
syslog.h include/debug.h/syslog.h: Fix small typos and repeated words 2021-03-22 06:06:44 -07:00
termios.h libc: Implement terminal api regardless of CONFIG_SERIAL_TERMIOS setting 2021-12-29 08:11:08 -03:00
threads.h include/threads: Fix pthread_mutexattr_t initialization on mtx_init 2021-08-31 11:21:22 +08:00
time.h libc/lib_strptime:change code format & add notes 2022-04-13 10:16:42 +08:00
unistd.h libc: Implement execvp, execlp and execvpe as macro 2022-04-22 10:40:31 +03:00
utime.h libc: Implement utime on top of utimes 2021-07-09 15:51:28 -03:00
uuid.h libc: Add uuid implemenation 2020-07-21 21:48:18 -07:00
wchar.h libc: Implement local_t related functions 2021-07-30 09:43:26 -03:00
wctype.h libc: Implement local_t related functions 2021-07-30 09:43:26 -03:00