zephyr/kernel
Daniel Leung c38634fa33 kernel: mmu: fix assigning unaligned addr to page frame
In do_page_fault(), the incoming page fault address is not
aligned, and it was unconditionally assigned to the page
frame virtual address field. If the backing store simply
returns the virtual address without processing in
k_mem_paging_backing_store_location_get(), this unaligned
address will be passed to arch_mem_page_out(). On x86,
it is further passed to range_map() which asserts if
the physical address is not page aligned. So align
the address to page size before assigning it to the page
frame virtual address field.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2021-08-26 21:16:22 -04:00
..
include smp: limit the scope of some SMP-only functions 2021-07-23 16:06:54 -04:00
paging kernel: mmu: z_backing_store* to k_mem_paging_backing_store* 2021-05-28 11:33:22 -04:00
atomic_c.c kernel: atomic: consistently use named type for atomic pointer values 2021-04-19 15:22:13 +02:00
banner.c kernel: init: move banner handling 2020-11-27 20:08:14 -05:00
cache_handlers.c cache: Rename sys_{dcache,icache}_* to sys_{data,instr}_cache_* 2021-05-08 07:00:33 +02:00
CMakeLists.txt kernel: allow linking a prebuilt library instead of compiling 2021-08-25 18:01:14 -04:00
compiler_stack_protect.c tests: coverage: exclude the CODE UNREACHABLE of code coverage 2021-01-15 12:42:00 -05:00
condvar.c Tracing: Conditional variable tracing 2021-05-07 22:10:21 -04:00
device.c device: supported devices visitor API 2021-08-25 19:43:54 -04:00
errno.c kernel: support using thread local storage for errno 2020-10-24 10:52:00 -07:00
fatal.c kernel: fatal: Avoid thread api access when no multithreading 2021-04-29 14:50:35 +02:00
futex.c futex: Avoid unnecessary lock 2021-07-30 20:21:04 -04:00
idle.c kernel/sched: Remove "cooperative scheduling only" special cases 2021-05-24 23:38:16 -04:00
init.c CPP: fix static objects init for MWDT toolchain 2021-08-09 22:47:22 -04:00
Kconfig kernel: drop unused priority related definitions 2021-08-17 17:52:17 -04:00
kheap.c toolchain: migrate iterable sections calls to the external API 2021-08-12 17:47:04 -04:00
mailbox.c kernel: remove object tracing 2021-05-07 22:10:21 -04:00
mem_domain.c kernel: Make both operands of operators of same essential type category 2021-04-01 05:34:17 -04:00
mem_slab.c toolchain: migrate iterable sections calls to the external API 2021-08-12 17:47:04 -04:00
mempool.c Tracing: Memory Heap tracing 2021-05-07 22:10:21 -04:00
mmu.c kernel: mmu: fix assigning unaligned addr to page frame 2021-08-26 21:16:22 -04:00
msg_q.c kernel: remove object tracing 2021-05-07 22:10:21 -04:00
mutex.c kernel: Fix negative mutex lock_count value 2021-07-06 19:19:41 -04:00
pipes.c kernel: remove object tracing 2021-05-07 22:10:21 -04:00
poll.c kernel: poll: fix coding guideline 15.7 missing comment 2021-06-04 16:22:50 -05:00
queue.c kernel: remove object tracing 2021-05-07 22:10:21 -04:00
sched.c kernel: make k_current_get() work without syscall 2021-07-30 20:16:47 -04:00
sem.c kernel: remove object tracing 2021-05-07 22:10:21 -04:00
smp.c smp: move a preprocessor conditional from .c to cmake 2021-05-03 17:13:01 -04:00
stack.c kernel: remove object tracing 2021-05-07 22:10:21 -04:00
system_work_q.c kernel: remove old work queue implementation 2021-03-03 20:06:00 -05:00
thread.c toolchain: migrate iterable sections calls to the external API 2021-08-12 17:47:04 -04:00
timeout.c kernel: fix several typos in a comment in timeout.c 2021-07-23 16:06:54 -04:00
timer.c kernel: remove object tracing 2021-05-07 22:10:21 -04:00
userspace.c kernel: userspace: fix typo in the comments 2021-08-24 07:31:49 -04:00
userspace_handler.c userspace: update k_object API to support immutable objects 2020-09-02 13:48:13 +02:00
version.c zephyr: replace zephyr integer types with C99 types 2020-06-08 08:23:57 -05:00
work.c kernel: work_q: Add an init function 2021-08-25 22:07:04 -04:00
xip.c linker: arm: Add cortex_m itcm section 2021-01-15 14:51:20 +01:00