public inbox for glibc-cvs@sourceware.org
help / color / mirror / Atom feed
* [glibc/arm/morello/main] cheri: elf: Use elfptr_t for function symbol fixup
@ 2022-10-26 15:19 Szabolcs Nagy
0 siblings, 0 replies; 3+ messages in thread
From: Szabolcs Nagy @ 2022-10-26 15:19 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1bbd148f243555671e75d6cb5ea4ca5cff38efec
commit 1bbd148f243555671e75d6cb5ea4ca5cff38efec
Author: Szabolcs Nagy <szabolcs.nagy@arm.com>
Date: Thu Oct 20 17:27:04 2022 +0100
cheri: elf: Use elfptr_t for function symbol fixup
Propagate capabilities during lazy binding and IFUNC fixup in dlsym.
Diff:
---
elf/dl-sym-post.h | 2 +-
sysdeps/generic/dl-lookupcfg.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/elf/dl-sym-post.h b/elf/dl-sym-post.h
index 28ca1cad7e..7c8b9b6e77 100644
--- a/elf/dl-sym-post.h
+++ b/elf/dl-sym-post.h
@@ -41,7 +41,7 @@ _dl_sym_post (lookup_t result, const ElfW(Sym) *ref, void *value,
if (__glibc_unlikely (ELFW(ST_TYPE) (ref->st_info) == STT_GNU_IFUNC))
{
DL_FIXUP_VALUE_TYPE fixup
- = DL_FIXUP_MAKE_VALUE (result, (ElfW(Addr)) value);
+ = DL_FIXUP_MAKE_VALUE (result, (elfptr_t) value);
fixup = elf_ifunc_invoke (DL_FIXUP_VALUE_ADDR (fixup));
value = (void *) DL_FIXUP_VALUE_CODE_ADDR (fixup);
}
diff --git a/sysdeps/generic/dl-lookupcfg.h b/sysdeps/generic/dl-lookupcfg.h
index 95bcfc1cc1..149945614b 100644
--- a/sysdeps/generic/dl-lookupcfg.h
+++ b/sysdeps/generic/dl-lookupcfg.h
@@ -17,7 +17,7 @@
<https://www.gnu.org/licenses/>. */
/* The type of the return value of fixup/profile_fixup. */
-#define DL_FIXUP_VALUE_TYPE ElfW(Addr)
+#define DL_FIXUP_VALUE_TYPE elfptr_t
/* Construct a value of type DL_FIXUP_VALUE_TYPE from a code address
and a link map. */
#define DL_FIXUP_MAKE_VALUE(map, addr) (addr)
^ permalink raw reply [flat|nested] 3+ messages in thread
* [glibc/arm/morello/main] cheri: elf: Use elfptr_t for function symbol fixup
@ 2022-11-23 14:48 Szabolcs Nagy
0 siblings, 0 replies; 3+ messages in thread
From: Szabolcs Nagy @ 2022-11-23 14:48 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=647e35b6ab9dc6a76c5bcb3aead5a4caaf1708cf
commit 647e35b6ab9dc6a76c5bcb3aead5a4caaf1708cf
Author: Szabolcs Nagy <szabolcs.nagy@arm.com>
Date: Thu Oct 20 17:27:04 2022 +0100
cheri: elf: Use elfptr_t for function symbol fixup
Propagate capabilities during lazy binding and IFUNC fixup in dlsym.
Diff:
---
elf/dl-sym-post.h | 2 +-
sysdeps/generic/dl-lookupcfg.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/elf/dl-sym-post.h b/elf/dl-sym-post.h
index 28ca1cad7e..7c8b9b6e77 100644
--- a/elf/dl-sym-post.h
+++ b/elf/dl-sym-post.h
@@ -41,7 +41,7 @@ _dl_sym_post (lookup_t result, const ElfW(Sym) *ref, void *value,
if (__glibc_unlikely (ELFW(ST_TYPE) (ref->st_info) == STT_GNU_IFUNC))
{
DL_FIXUP_VALUE_TYPE fixup
- = DL_FIXUP_MAKE_VALUE (result, (ElfW(Addr)) value);
+ = DL_FIXUP_MAKE_VALUE (result, (elfptr_t) value);
fixup = elf_ifunc_invoke (DL_FIXUP_VALUE_ADDR (fixup));
value = (void *) DL_FIXUP_VALUE_CODE_ADDR (fixup);
}
diff --git a/sysdeps/generic/dl-lookupcfg.h b/sysdeps/generic/dl-lookupcfg.h
index 95bcfc1cc1..149945614b 100644
--- a/sysdeps/generic/dl-lookupcfg.h
+++ b/sysdeps/generic/dl-lookupcfg.h
@@ -17,7 +17,7 @@
<https://www.gnu.org/licenses/>. */
/* The type of the return value of fixup/profile_fixup. */
-#define DL_FIXUP_VALUE_TYPE ElfW(Addr)
+#define DL_FIXUP_VALUE_TYPE elfptr_t
/* Construct a value of type DL_FIXUP_VALUE_TYPE from a code address
and a link map. */
#define DL_FIXUP_MAKE_VALUE(map, addr) (addr)
^ permalink raw reply [flat|nested] 3+ messages in thread
* [glibc/arm/morello/main] cheri: elf: Use elfptr_t for function symbol fixup
@ 2022-10-27 13:58 Szabolcs Nagy
0 siblings, 0 replies; 3+ messages in thread
From: Szabolcs Nagy @ 2022-10-27 13:58 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=ddd4011014924bd46d9fce4cc5333bea9d792d41
commit ddd4011014924bd46d9fce4cc5333bea9d792d41
Author: Szabolcs Nagy <szabolcs.nagy@arm.com>
Date: Thu Oct 20 17:27:04 2022 +0100
cheri: elf: Use elfptr_t for function symbol fixup
Propagate capabilities during lazy binding and IFUNC fixup in dlsym.
Diff:
---
elf/dl-sym-post.h | 2 +-
sysdeps/generic/dl-lookupcfg.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/elf/dl-sym-post.h b/elf/dl-sym-post.h
index 28ca1cad7e..7c8b9b6e77 100644
--- a/elf/dl-sym-post.h
+++ b/elf/dl-sym-post.h
@@ -41,7 +41,7 @@ _dl_sym_post (lookup_t result, const ElfW(Sym) *ref, void *value,
if (__glibc_unlikely (ELFW(ST_TYPE) (ref->st_info) == STT_GNU_IFUNC))
{
DL_FIXUP_VALUE_TYPE fixup
- = DL_FIXUP_MAKE_VALUE (result, (ElfW(Addr)) value);
+ = DL_FIXUP_MAKE_VALUE (result, (elfptr_t) value);
fixup = elf_ifunc_invoke (DL_FIXUP_VALUE_ADDR (fixup));
value = (void *) DL_FIXUP_VALUE_CODE_ADDR (fixup);
}
diff --git a/sysdeps/generic/dl-lookupcfg.h b/sysdeps/generic/dl-lookupcfg.h
index 95bcfc1cc1..149945614b 100644
--- a/sysdeps/generic/dl-lookupcfg.h
+++ b/sysdeps/generic/dl-lookupcfg.h
@@ -17,7 +17,7 @@
<https://www.gnu.org/licenses/>. */
/* The type of the return value of fixup/profile_fixup. */
-#define DL_FIXUP_VALUE_TYPE ElfW(Addr)
+#define DL_FIXUP_VALUE_TYPE elfptr_t
/* Construct a value of type DL_FIXUP_VALUE_TYPE from a code address
and a link map. */
#define DL_FIXUP_MAKE_VALUE(map, addr) (addr)
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-11-23 14:48 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-26 15:19 [glibc/arm/morello/main] cheri: elf: Use elfptr_t for function symbol fixup Szabolcs Nagy
2022-10-27 13:58 Szabolcs Nagy
2022-11-23 14:48 Szabolcs Nagy
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).