Printing some useful diagnostics when a page fault happens would be very useful for debugging them.
Print what caused the error (supervisory process, user process, non-present page, permission violation etc.), the address of the instruction causing it and the faulty address.
https://wiki.osdev.org/Paging#Page_Faults