Pull up following revision(s) (requested by riastradh in ticket #1849):

lib/libc/dlfcn/dlfcn_elf.c: revision 1.17

libc: Fix missing membar_consumer in dl_iterate_phdr.

Pairs with the existing membar_producer.
This commit is contained in:
martin 2023-07-05 16:15:37 +00:00
parent 9b9080bdd7
commit dd4a7cf20f
1 changed files with 3 additions and 2 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: dlfcn_elf.c,v 1.13.24.1 2017/08/29 09:43:18 bouyer Exp $ */
/* $NetBSD: dlfcn_elf.c,v 1.13.24.2 2023/07/05 16:15:37 martin Exp $ */
/*
* Copyright (c) 2000 Takuya SHIOZAKI
@ -27,7 +27,7 @@
#include <sys/cdefs.h>
#if defined(LIBC_SCCS) && !defined(lint)
__RCSID("$NetBSD: dlfcn_elf.c,v 1.13.24.1 2017/08/29 09:43:18 bouyer Exp $");
__RCSID("$NetBSD: dlfcn_elf.c,v 1.13.24.2 2023/07/05 16:15:37 martin Exp $");
#endif /* LIBC_SCCS and not lint */
#include "namespace.h"
@ -195,6 +195,7 @@ dl_iterate_phdr(int (*callback)(struct dl_phdr_info *, size_t, void *),
membar_producer();
setup_done = true;
}
membar_consumer();
memset(&phdr_info, 0, sizeof(phdr_info));
phdr_info.dlpi_addr = dlpi_addr;