xv6 is amazing, my new hobby is studying everything about xv6. Awesome! The best! Now I have changed the linker script and pages, so that we really keep kernel text, read-only data, data, and bss in separate pages with the corresponding attributes. Writing access to read-only data generates an exception. Very cool, and the best part is running on KianV RV32IMA Linux xv6 RISC-V SoC.