You are correct - it should be 0xff not 0xf. You are also correct that the series PMM initialization does not take into consideration data areas between 0-1MB in RAM (IVT,BDA,etc) that can cause possible issues depending on your design and feature set. This is also a bug -- pmmngr_init would prevent this (disregarding the 0xf bug) however main() never takes it into account.

The kernel region is marked as "in use" because it is in use by the kernel itself.