Hello,
Maximus Minter, le mar. 07 avril 2026 22:30:33 -0400, a ecrit:
> - Fix memory leak in gsync_wake
> diff --git a/kern/gsync.c b/kern/gsync.c
> index 656e47dd..ee058657 100644
> --- a/kern/gsync.c
> +++ b/kern/gsync.c
> @@ -410,6 +410,7 @@ kern_return_t gsync_wake (task_t task,
> addr = paddr + (addr & (PAGE_SIZE - 1));
> *(unsigned int *)addr = val;
> vm_map_remove (kernel_map, addr, addr + sizeof (int));
> + vm_object_deallocate (va.obj); /* release the extra reference */
> }
> else if (copyout (&val, (void *) addr, 4))
> {
Have you checked that this code is actually reached in your tests?
See the same code in gsync_wait:
/* Note that the call to 'vm_map_remove' will unreference
* the VM object, so we don't have to do it ourselves. */
vm_map_remove (kernel_map, paddr, paddr + PAGE_SIZE);
}
Samuel