Open CorruptedByCPU opened 2 weeks ago
problem disgnosed, but cannot find it yet
hashout line of kernel_memory_dispose will fix issue, but on the other hand, every process will need infinite amount of memory
i somehow allowed, somewhere to allocate 1 physical page in two places... thats the main reason, or released page/s and not informed about it a kernel
void kernel_syscall_memory_release( uintptr_t target, uint64_t page ) {
// current task properties
struct KERNEL_TASK_STRUCTURE *task = kernel_task_active();
// remove page from paging structure
kernel_page_release( (uint64_t *) task -> cr3, target, page );
// release page in binary memory map of process
// kernel_memory_dispose( task -> memory_map, target >> STD_SHIFT_PAGE, page );
// process memory usage
task -> page -= page;
}
this problem definitely affects all versions (Cyjon/Fern-Night/Foton) from time to time, some pages overlap with other processes it will take a long time to find the problem possible design error