Mark Kettenis <[email protected]> writes: > Any reason why you're not using MAP_FIXED instead of doing this > munmap/mmap dance?
Nope, I just forgot about that flag. Thanks!
Here's a diff from the posted version; I've also sent an updated version
of the patch.
diff --git a/os/busfault.c b/os/busfault.c
index 05f610e..45ee074 100644
--- a/os/busfault.c
+++ b/os/busfault.c
@@ -121,15 +121,10 @@ busfault_sigaction(int sig, siginfo_t *info, void *param)
* /dev/zero over that area and keep going
*/
- if (munmap(busfault->addr, busfault->size) < 0)
- goto panic;
-
- new_addr = mmap(busfault->addr, busfault->size, PROT_READ|PROT_WRITE,
MAP_ANONYMOUS|MAP_PRIVATE, -1, 0);
+ new_addr = mmap(busfault->addr, busfault->size, PROT_READ|PROT_WRITE,
MAP_ANONYMOUS|MAP_PRIVATE|MAP_FIXED, -1, 0);
- if (new_addr != busfault->addr) {
- munmap(new_addr, busfault->size);
+ if (new_addr == MAP_FAILED)
goto panic;
- }
return;
panic:
--
[email protected]
pgppcy0jLADTm.pgp
Description: PGP signature
_______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
