| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[libc] Implement pkey_alloc/free/get/set/mprotect for x86_64 linux (#162362) This patch provides definitions for pkey_* functions for linux x86_64. pkey_alloc, pkey_free, and pkey_mprotect are simple syscall wrappers. pkey_set and pkey_get modify architecture-specific registers. The logic for these live in architecture specific directories: * libc/src/sys/mman/linux/x86_64/pkey_common.h has a real implementation * libc/src/sys/mman/linux/generic/pkey_common.h contains stubs that just return ENOSYS. | 8 个月前 | |
[libc] Move the implementation of mmap and munmap into a linux specific area. This allows us to get rid of the PAGE_SIZE macro and use EXEC_PAGESIZE from linux/param.h. Few other points about this change: 1. The linux syscall functions have been moved into a linux specific area instead of src/unistd/syscall.h. The Linux syscall function from unistd.h is a public vararg function. What we have currently are linux speciif internal overloaded C++ functions. So, moving them to a Linux only area is more meaningful. 2. The implementations of mmap and munmap are now in a 'linux' directory within src/sys/mman. The idea here is that platform specific implementations will live in a platform specific subdirectories like these. Infrastructure common to a platform will live in the platform's config directory. For example, the linux syscall implementations live in config/linux. Reviewers: abrachet Tags: #libc-project Differential Revision: https://reviews.llvm.org/D73302 | 6 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 8 个月前 | ||
| 6 年前 |