* [Buildroot] [PATCH] package/valgrind: fix MIPS compile issues
@ 2024-08-08 13:39 Waldemar Brodkorb
2024-08-08 16:56 ` Thomas Petazzoni via buildroot
0 siblings, 1 reply; 2+ messages in thread
From: Waldemar Brodkorb @ 2024-08-08 13:39 UTC (permalink / raw)
To: buildroot
Add two patches from upstream to fix MIPS compile issues.
Fixes:
- http://autobuild.buildroot.net/results/4cb/4cb021207d341b412ef6921c3368da3b644d7eb0
- http://autobuild.buildroot.net/results/d0e/d0ef7145960695bbbec23909b1ca24a5336f3c23
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
---
...ninitialized-err-in-handle_extension.patch | 47 +++++++++++++++++++
...st_IP_AT_SYSCALL-in-handle_extension.patch | 33 +++++++++++++
2 files changed, 80 insertions(+)
create mode 100644 package/valgrind/0003-Fix-uninitialized-err-in-handle_extension.patch
create mode 100644 package/valgrind/0004-Avoid-use-of-guest_IP_AT_SYSCALL-in-handle_extension.patch
diff --git a/package/valgrind/0003-Fix-uninitialized-err-in-handle_extension.patch b/package/valgrind/0003-Fix-uninitialized-err-in-handle_extension.patch
new file mode 100644
index 0000000000..c6a6b3dce3
--- /dev/null
+++ b/package/valgrind/0003-Fix-uninitialized-err-in-handle_extension.patch
@@ -0,0 +1,47 @@
+From 94c2e5c6be23c6323f24deacdad5f98fb9f0b1c2 Mon Sep 17 00:00:00 2001
+From: Andreas Arnez <arnez@linux.ibm.com>
+Date: Wed, 15 May 2024 14:32:42 +0200
+Subject: [PATCH] Fix uninitialized `err' in handle_extension()
+
+In handle_extension(), in the case of a second return from SCHEDSETJMP the
+variable `err' would be used uninitialized. Fix this by avoiding any
+access to `err' in this case.
+
+Signed-off-by: Andreas Arnez <arnez@linux.ibm.com>
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+Upstream: https://sourceware.org/git/?p=valgrind.git;a=commit;h=94c2e5c6be23c6323f24deacdad5f98fb9f0b1c2
+---
+ coregrind/m_scheduler/scheduler.c | 10 ++++------
+ 1 file changed, 4 insertions(+), 6 deletions(-)
+
+diff --git a/coregrind/m_scheduler/scheduler.c b/coregrind/m_scheduler/scheduler.c
+index fc8cf7c9c..29751bb28 100644
+--- a/coregrind/m_scheduler/scheduler.c
++++ b/coregrind/m_scheduler/scheduler.c
+@@ -1233,7 +1233,10 @@ static void handle_extension(ThreadId tid)
+ SCHEDSETJMP(tid, jumped, err = VG_(client_extension)(tid));
+ vg_assert(VG_(is_running_thread)(tid));
+
+- if (err != ExtErr_OK) {
++ if (jumped != (UWord)0) {
++ block_signals();
++ VG_(poll_signals)(tid);
++ } else if (err != ExtErr_OK) {
+ ThreadState* tst = VG_(get_ThreadState)(tid);
+ Addr addr = tst->arch.vex.guest_IP_AT_SYSCALL;
+ switch (err) {
+@@ -1244,11 +1247,6 @@ static void handle_extension(ThreadId tid)
+ VG_(core_panic)("scheduler: bad return code from extension");
+ }
+ }
+-
+- if (jumped != (UWord)0) {
+- block_signals();
+- VG_(poll_signals)(tid);
+- }
+ }
+
+ /* tid just requested a jump to the noredir version of its current
+--
+2.39.2
+
diff --git a/package/valgrind/0004-Avoid-use-of-guest_IP_AT_SYSCALL-in-handle_extension.patch b/package/valgrind/0004-Avoid-use-of-guest_IP_AT_SYSCALL-in-handle_extension.patch
new file mode 100644
index 0000000000..006e24096e
--- /dev/null
+++ b/package/valgrind/0004-Avoid-use-of-guest_IP_AT_SYSCALL-in-handle_extension.patch
@@ -0,0 +1,33 @@
+From 16249b21456d681b5d98400287b8dbd926050c75 Mon Sep 17 00:00:00 2001
+From: Andreas Arnez <arnez@linux.ibm.com>
+Date: Wed, 15 May 2024 14:32:42 +0200
+Subject: [PATCH] Avoid use of guest_IP_AT_SYSCALL in handle_extension()
+
+The guest state field guest_IP_AT_SYSCALL is referenced in
+handle_extension(), even though it may not be defined by all
+architectures. Avoid its use altogether.
+
+Signed-off-by: Andreas Arnez <arnez@linux.ibm.com>
+Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
+Upstream: https://sourceware.org/git/?p=valgrind.git;a=commit;h=16249b21456d681b5d98400287b8dbd926050c75
+---
+ coregrind/m_scheduler/scheduler.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/coregrind/m_scheduler/scheduler.c b/coregrind/m_scheduler/scheduler.c
+index 29751bb28..cc8d070b7 100644
+--- a/coregrind/m_scheduler/scheduler.c
++++ b/coregrind/m_scheduler/scheduler.c
+@@ -1237,8 +1237,7 @@ static void handle_extension(ThreadId tid)
+ block_signals();
+ VG_(poll_signals)(tid);
+ } else if (err != ExtErr_OK) {
+- ThreadState* tst = VG_(get_ThreadState)(tid);
+- Addr addr = tst->arch.vex.guest_IP_AT_SYSCALL;
++ Addr addr = VG_(get_IP)(tid);
+ switch (err) {
+ case ExtErr_Illop:
+ VG_(synth_sigill)(tid, addr);
+--
+2.39.2
+
--
2.39.2
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [Buildroot] [PATCH] package/valgrind: fix MIPS compile issues
2024-08-08 13:39 [Buildroot] [PATCH] package/valgrind: fix MIPS compile issues Waldemar Brodkorb
@ 2024-08-08 16:56 ` Thomas Petazzoni via buildroot
0 siblings, 0 replies; 2+ messages in thread
From: Thomas Petazzoni via buildroot @ 2024-08-08 16:56 UTC (permalink / raw)
To: Waldemar Brodkorb; +Cc: buildroot
On Thu, 8 Aug 2024 15:39:01 +0200
Waldemar Brodkorb <wbx@openadk.org> wrote:
> Add two patches from upstream to fix MIPS compile issues.
>
> Fixes:
> - http://autobuild.buildroot.net/results/4cb/4cb021207d341b412ef6921c3368da3b644d7eb0
> - http://autobuild.buildroot.net/results/d0e/d0ef7145960695bbbec23909b1ca24a5336f3c23
>
> Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
> ---
> ...ninitialized-err-in-handle_extension.patch | 47 +++++++++++++++++++
> ...st_IP_AT_SYSCALL-in-handle_extension.patch | 33 +++++++++++++
> 2 files changed, 80 insertions(+)
> create mode 100644 package/valgrind/0003-Fix-uninitialized-err-in-handle_extension.patch
> create mode 100644 package/valgrind/0004-Avoid-use-of-guest_IP_AT_SYSCALL-in-handle_extension.patch
Applied to master, thanks.
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-08-08 16:57 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-08 13:39 [Buildroot] [PATCH] package/valgrind: fix MIPS compile issues Waldemar Brodkorb
2024-08-08 16:56 ` Thomas Petazzoni via buildroot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.