lightrec: Fix unmap size of BIOS
authorPaul Cercueil <paul@crapouillou.net>
Sun, 12 Jun 2022 15:05:02 +0000 (16:05 +0100)
committerPaul Cercueil <paul@crapouillou.net>
Sun, 12 Jun 2022 15:07:24 +0000 (16:07 +0100)
The BIOS was mapped as 2 MiB, since we want to use a huge page if
possible. Therefore it should also be unmapped as 2 MiB, otherwise the
upper 1.5 MiB will still be mapped after de-init, which will make it
impossible to map the BIOS once again.

Signed-off-by: Paul Cercueil <paul@crapouillou.net>
libpcsxcore/lightrec/mem.c

index ff67e3d..c0186da 100644 (file)
@@ -190,7 +190,7 @@ int lightrec_init_mmap(void)
 err_unmap_scratch:
        munmap(psxH, 0x10000);
 err_unmap_bios:
-       munmap(psxR, 0x80000);
+       munmap(psxR, 0x200000);
 err_unmap_parallel:
        munmap(psxP, 0x10000);
 err_unmap:
@@ -205,7 +205,7 @@ void lightrec_free_mmap(void)
 
        munmap(code_buffer, CODE_BUFFER_SIZE);
        munmap(psxH, 0x10000);
-       munmap(psxR, 0x80000);
+       munmap(psxR, 0x200000);
        munmap(psxP, 0x10000);
        for (i = 0; i < 4; i++)
                munmap((void *)((uintptr_t)psxM + i * 0x200000), 0x200000);