Index: kernel/generic/src/mm/backend_anon.c
===================================================================
--- kernel/generic/src/mm/backend_anon.c	(revision 908bb9645ed022f8ccdcdfd80a4b312d622b76e9)
+++ kernel/generic/src/mm/backend_anon.c	(revision db71e2af5cdfe169de296e6f39b3e5eda7a966f6)
@@ -173,5 +173,5 @@
  *
  * @param area Pointer to the address space area.
- * @param addr Faulting virtual address.
+ * @param upage Faulting virtual page.
  * @param access Access mode that caused the fault (i.e. read/write/exec).
  *
@@ -179,7 +179,6 @@
  *     serviced).
  */
-int anon_page_fault(as_area_t *area, uintptr_t addr, pf_access_t access)
-{
-	uintptr_t upage = ALIGN_DOWN(addr, PAGE_SIZE);
+int anon_page_fault(as_area_t *area, uintptr_t upage, pf_access_t access)
+{
 	uintptr_t kpage;
 	uintptr_t frame;
@@ -187,4 +186,5 @@
 	ASSERT(page_table_locked(AS));
 	ASSERT(mutex_locked(&area->lock));
+	ASSERT(IS_ALIGNED(upage, PAGE_SIZE));
 
 	if (!as_area_check_access(area, access))
