You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(122) |
Nov
(152) |
Dec
(69) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(6) |
Feb
(25) |
Mar
(73) |
Apr
(82) |
May
(24) |
Jun
(25) |
Jul
(10) |
Aug
(11) |
Sep
(10) |
Oct
(54) |
Nov
(203) |
Dec
(182) |
| 2004 |
Jan
(307) |
Feb
(305) |
Mar
(430) |
Apr
(312) |
May
(187) |
Jun
(342) |
Jul
(487) |
Aug
(637) |
Sep
(336) |
Oct
(373) |
Nov
(441) |
Dec
(210) |
| 2005 |
Jan
(385) |
Feb
(480) |
Mar
(636) |
Apr
(544) |
May
(679) |
Jun
(625) |
Jul
(810) |
Aug
(838) |
Sep
(634) |
Oct
(521) |
Nov
(965) |
Dec
(543) |
| 2006 |
Jan
(494) |
Feb
(431) |
Mar
(546) |
Apr
(411) |
May
(406) |
Jun
(322) |
Jul
(256) |
Aug
(401) |
Sep
(345) |
Oct
(542) |
Nov
(308) |
Dec
(481) |
| 2007 |
Jan
(427) |
Feb
(326) |
Mar
(367) |
Apr
(255) |
May
(244) |
Jun
(204) |
Jul
(223) |
Aug
(231) |
Sep
(354) |
Oct
(374) |
Nov
(497) |
Dec
(362) |
| 2008 |
Jan
(322) |
Feb
(482) |
Mar
(658) |
Apr
(422) |
May
(476) |
Jun
(396) |
Jul
(455) |
Aug
(267) |
Sep
(280) |
Oct
(253) |
Nov
(232) |
Dec
(304) |
| 2009 |
Jan
(486) |
Feb
(470) |
Mar
(458) |
Apr
(423) |
May
(696) |
Jun
(461) |
Jul
(551) |
Aug
(575) |
Sep
(134) |
Oct
(110) |
Nov
(157) |
Dec
(102) |
| 2010 |
Jan
(226) |
Feb
(86) |
Mar
(147) |
Apr
(117) |
May
(107) |
Jun
(203) |
Jul
(193) |
Aug
(238) |
Sep
(300) |
Oct
(246) |
Nov
(23) |
Dec
(75) |
| 2011 |
Jan
(133) |
Feb
(195) |
Mar
(315) |
Apr
(200) |
May
(267) |
Jun
(293) |
Jul
(353) |
Aug
(237) |
Sep
(278) |
Oct
(611) |
Nov
(274) |
Dec
(260) |
| 2012 |
Jan
(303) |
Feb
(391) |
Mar
(417) |
Apr
(441) |
May
(488) |
Jun
(655) |
Jul
(590) |
Aug
(610) |
Sep
(526) |
Oct
(478) |
Nov
(359) |
Dec
(372) |
| 2013 |
Jan
(467) |
Feb
(226) |
Mar
(391) |
Apr
(281) |
May
(299) |
Jun
(252) |
Jul
(311) |
Aug
(352) |
Sep
(481) |
Oct
(571) |
Nov
(222) |
Dec
(231) |
| 2014 |
Jan
(185) |
Feb
(329) |
Mar
(245) |
Apr
(238) |
May
(281) |
Jun
(399) |
Jul
(382) |
Aug
(500) |
Sep
(579) |
Oct
(435) |
Nov
(487) |
Dec
(256) |
| 2015 |
Jan
(338) |
Feb
(357) |
Mar
(330) |
Apr
(294) |
May
(191) |
Jun
(108) |
Jul
(142) |
Aug
(261) |
Sep
(190) |
Oct
(54) |
Nov
(83) |
Dec
(22) |
| 2016 |
Jan
(49) |
Feb
(89) |
Mar
(33) |
Apr
(50) |
May
(27) |
Jun
(34) |
Jul
(53) |
Aug
(53) |
Sep
(98) |
Oct
(206) |
Nov
(93) |
Dec
(53) |
| 2017 |
Jan
(65) |
Feb
(82) |
Mar
(102) |
Apr
(86) |
May
(187) |
Jun
(67) |
Jul
(23) |
Aug
(93) |
Sep
(65) |
Oct
(45) |
Nov
(35) |
Dec
(17) |
| 2018 |
Jan
(26) |
Feb
(35) |
Mar
(38) |
Apr
(32) |
May
(8) |
Jun
(43) |
Jul
(27) |
Aug
(30) |
Sep
(43) |
Oct
(42) |
Nov
(38) |
Dec
(67) |
| 2019 |
Jan
(32) |
Feb
(37) |
Mar
(53) |
Apr
(64) |
May
(49) |
Jun
(18) |
Jul
(14) |
Aug
(53) |
Sep
(25) |
Oct
(30) |
Nov
(49) |
Dec
(31) |
| 2020 |
Jan
(87) |
Feb
(45) |
Mar
(37) |
Apr
(51) |
May
(99) |
Jun
(36) |
Jul
(11) |
Aug
(14) |
Sep
(20) |
Oct
(24) |
Nov
(40) |
Dec
(23) |
| 2021 |
Jan
(14) |
Feb
(53) |
Mar
(85) |
Apr
(15) |
May
(19) |
Jun
(3) |
Jul
(14) |
Aug
(1) |
Sep
(57) |
Oct
(73) |
Nov
(56) |
Dec
(22) |
| 2022 |
Jan
(3) |
Feb
(22) |
Mar
(6) |
Apr
(55) |
May
(46) |
Jun
(39) |
Jul
(15) |
Aug
(9) |
Sep
(11) |
Oct
(34) |
Nov
(20) |
Dec
(36) |
| 2023 |
Jan
(79) |
Feb
(41) |
Mar
(99) |
Apr
(169) |
May
(48) |
Jun
(16) |
Jul
(16) |
Aug
(57) |
Sep
(19) |
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
|
1
(2) |
2
(2) |
3
|
4
(1) |
|
5
(2) |
6
|
7
(1) |
8
(1) |
9
(3) |
10
(4) |
11
(3) |
|
12
|
13
(1) |
14
|
15
(1) |
16
|
17
|
18
|
|
19
|
20
|
21
|
22
|
23
|
24
|
25
|
|
26
|
27
|
28
|
29
|
30
|
31
(1) |
|
|
From: Paul F. <pa...@so...> - 2021-12-09 21:56:38
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=01048e33df95b413642b1479d747b065c948000a commit 01048e33df95b413642b1479d747b065c948000a Author: Paul Floyd <pj...@wa...> Date: Thu Dec 9 22:54:23 2021 +0100 FreeBSD sigreturn arg names again Also make drd/tests/shared_timed_mutex more robust Already not great using time delays, but the test seems to fail intermittently due to spurious wakeups. So instead of railing straight away, make it "three strikes and you're out". Diff: --- coregrind/m_syswrap/syswrap-amd64-freebsd.c | 8 +++---- coregrind/m_syswrap/syswrap-x86-freebsd.c | 6 ++--- drd/tests/shared_timed_mutex.cpp | 26 ++++++++++++++++------ memcheck/tests/freebsd/scalar.stderr.exp | 4 ++-- .../tests/freebsd/scalar.stderr.exp-freebsd130 | 4 ++-- .../tests/freebsd/scalar.stderr.exp-freebsd130-x86 | 4 ++-- memcheck/tests/freebsd/scalar.stderr.exp-x86 | 4 ++-- 7 files changed, 34 insertions(+), 22 deletions(-) diff --git a/coregrind/m_syswrap/syswrap-amd64-freebsd.c b/coregrind/m_syswrap/syswrap-amd64-freebsd.c index c5685c4773..7302ffc429 100644 --- a/coregrind/m_syswrap/syswrap-amd64-freebsd.c +++ b/coregrind/m_syswrap/syswrap-amd64-freebsd.c @@ -422,7 +422,7 @@ PRE(sys_sigreturn) { PRINT("sys_sigreturn ( %#" FMT_REGWORD "x )", ARG1); PRE_REG_READ1(int, "sigreturn", - struct vki_ucontext *, ucp); + struct vki_ucontext *, scp); PRE_MEM_READ( "sigreturn(scp)", ARG1, sizeof(struct vki_ucontext) ); PRE_MEM_WRITE( "sigreturn(scp)", ARG1, sizeof(struct vki_ucontext) ); @@ -1064,10 +1064,10 @@ PRE(sys_fake_sigreturn) PRINT("sys_sigreturn ( %#" FMT_REGWORD "x )", ARG1); PRE_REG_READ1(long, "sigreturn", - struct vki_ucontext *, ucp); + struct vki_ucontext *, scp); - PRE_MEM_READ( "sigreturn(ucp)", ARG1, sizeof(struct vki_ucontext) ); - PRE_MEM_WRITE( "sigreturn(ucp)", ARG1, sizeof(struct vki_ucontext) ); + PRE_MEM_READ( "sigreturn(scp)", ARG1, sizeof(struct vki_ucontext) ); + PRE_MEM_WRITE( "sigreturn(scp)", ARG1, sizeof(struct vki_ucontext) ); vg_assert(VG_(is_valid_tid)(tid)); vg_assert(tid >= 1 && tid < VG_N_THREADS); diff --git a/coregrind/m_syswrap/syswrap-x86-freebsd.c b/coregrind/m_syswrap/syswrap-x86-freebsd.c index 4fd1ce5011..5c82f7db65 100644 --- a/coregrind/m_syswrap/syswrap-x86-freebsd.c +++ b/coregrind/m_syswrap/syswrap-x86-freebsd.c @@ -813,10 +813,10 @@ PRE(sys_sigreturn) { PRINT("sys_sigreturn ( %#" FMT_REGWORD "x )", ARG1); PRE_REG_READ1(int, "sigreturn", - struct vki_ucontext *, ucp); + struct vki_ucontext *, scp); - PRE_MEM_READ( "sigreturn(ucp)", ARG1, sizeof(struct vki_ucontext) ); - PRE_MEM_WRITE( "sigreturn(ucp)", ARG1, sizeof(struct vki_ucontext) ); + PRE_MEM_READ( "sigreturn(scp)", ARG1, sizeof(struct vki_ucontext) ); + PRE_MEM_WRITE( "sigreturn(scp)", ARG1, sizeof(struct vki_ucontext) ); } diff --git a/drd/tests/shared_timed_mutex.cpp b/drd/tests/shared_timed_mutex.cpp index 306d6bf27a..9741169672 100644 --- a/drd/tests/shared_timed_mutex.cpp +++ b/drd/tests/shared_timed_mutex.cpp @@ -15,12 +15,19 @@ bool reads_done = false; void f() { auto now=std::chrono::steady_clock::now(); - if (test_mutex.try_lock_until(now + std::chrono::seconds(3))) + auto then = now + std::chrono::seconds(3); + int i; + for (i = 0; i < 3 && std::chrono::steady_clock::now() < then; ++i) { - --global; - test_mutex.unlock(); + if (test_mutex.try_lock_until(then)) + { + --global; + test_mutex.unlock(); + break; + } } - else + + if (i == 3) { std::cerr << "Lock failed\n"; } @@ -29,11 +36,16 @@ void f() void g() { auto now=std::chrono::steady_clock::now(); - if (test_mutex.try_lock_shared_until(now + std::chrono::seconds(2))) + auto then = now + std::chrono::seconds(2); + int i; + for (i = 0; i < 3 && std::chrono::steady_clock::now() < then; ++i) { - test_mutex.unlock_shared(); + if (test_mutex.try_lock_shared_until(then)) + { + test_mutex.unlock_shared(); + } } - else + if (i == 3) { std::cerr << "Lock shared failed\n"; } diff --git a/memcheck/tests/freebsd/scalar.stderr.exp b/memcheck/tests/freebsd/scalar.stderr.exp index 3f16d12d61..80b4547fde 100644 --- a/memcheck/tests/freebsd/scalar.stderr.exp +++ b/memcheck/tests/freebsd/scalar.stderr.exp @@ -3188,10 +3188,10 @@ Warning: bad act handler address 0x........ in sigaction() --------------------------------------------------------- 417: SYS_sigreturn 1s 1m --------------------------------------------------------- -Syscall param sigreturn(ucp) contains uninitialised byte(s) +Syscall param sigreturn(scp) contains uninitialised byte(s) ... -Syscall param sigreturn(ucp) points to unaddressable byte(s) +Syscall param sigreturn(scp) points to unaddressable byte(s) ... Address 0x........ is not stack'd, malloc'd or (recently) free'd diff --git a/memcheck/tests/freebsd/scalar.stderr.exp-freebsd130 b/memcheck/tests/freebsd/scalar.stderr.exp-freebsd130 index 309749f072..deaa61d6ff 100644 --- a/memcheck/tests/freebsd/scalar.stderr.exp-freebsd130 +++ b/memcheck/tests/freebsd/scalar.stderr.exp-freebsd130 @@ -3204,10 +3204,10 @@ Warning: bad act handler address 0x........ in sigaction() --------------------------------------------------------- 417: SYS_sigreturn 1s 1m --------------------------------------------------------- -Syscall param sigreturn(ucp) contains uninitialised byte(s) +Syscall param sigreturn(scp) contains uninitialised byte(s) ... -Syscall param sigreturn(ucp) points to unaddressable byte(s) +Syscall param sigreturn(scp) points to unaddressable byte(s) ... Address 0x........ is not stack'd, malloc'd or (recently) free'd diff --git a/memcheck/tests/freebsd/scalar.stderr.exp-freebsd130-x86 b/memcheck/tests/freebsd/scalar.stderr.exp-freebsd130-x86 index 62ed782c5f..70919f47cb 100644 --- a/memcheck/tests/freebsd/scalar.stderr.exp-freebsd130-x86 +++ b/memcheck/tests/freebsd/scalar.stderr.exp-freebsd130-x86 @@ -3213,10 +3213,10 @@ Warning: bad act handler address 0x........ in sigaction() --------------------------------------------------------- 417: SYS_sigreturn 1s 1m --------------------------------------------------------- -Syscall param sigreturn(ucp) contains uninitialised byte(s) +Syscall param sigreturn(scp) contains uninitialised byte(s) ... -Syscall param sigreturn(ucp) points to unaddressable byte(s) +Syscall param sigreturn(scp) points to unaddressable byte(s) ... Address 0x........ is not stack'd, malloc'd or (recently) free'd diff --git a/memcheck/tests/freebsd/scalar.stderr.exp-x86 b/memcheck/tests/freebsd/scalar.stderr.exp-x86 index b949dbb7e8..e1f24ef803 100644 --- a/memcheck/tests/freebsd/scalar.stderr.exp-x86 +++ b/memcheck/tests/freebsd/scalar.stderr.exp-x86 @@ -3197,10 +3197,10 @@ Warning: bad act handler address 0x........ in sigaction() --------------------------------------------------------- 417: SYS_sigreturn 1s 1m --------------------------------------------------------- -Syscall param sigreturn(ucp) contains uninitialised byte(s) +Syscall param sigreturn(scp) contains uninitialised byte(s) ... -Syscall param sigreturn(ucp) points to unaddressable byte(s) +Syscall param sigreturn(scp) points to unaddressable byte(s) ... Address 0x........ is not stack'd, malloc'd or (recently) free'd |
|
From: Paul F. <pa...@so...> - 2021-12-09 21:12:59
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=3bfe4a4f7afa6681415f46eb473c244e95efaafa commit 3bfe4a4f7afa6681415f46eb473c244e95efaafa Author: Paul Floyd <pj...@wa...> Date: Thu Dec 9 22:11:04 2021 +0100 Minor sigreturn code cleaning for sigreturn / FreeBSD More comments + wrapper arg names matching man page (even if the syscall should never get called directly from client code). Diff: --- coregrind/m_syswrap/syswrap-amd64-freebsd.c | 4 ++-- coregrind/m_syswrap/syswrap-x86-freebsd.c | 6 +++--- coregrind/m_trampoline.S | 22 ++++++++++++++++++++++ 3 files changed, 27 insertions(+), 5 deletions(-) diff --git a/coregrind/m_syswrap/syswrap-amd64-freebsd.c b/coregrind/m_syswrap/syswrap-amd64-freebsd.c index 076f5b4c4d..c5685c4773 100644 --- a/coregrind/m_syswrap/syswrap-amd64-freebsd.c +++ b/coregrind/m_syswrap/syswrap-amd64-freebsd.c @@ -424,8 +424,8 @@ PRE(sys_sigreturn) PRE_REG_READ1(int, "sigreturn", struct vki_ucontext *, ucp); - PRE_MEM_READ( "sigreturn(ucp)", ARG1, sizeof(struct vki_ucontext) ); - PRE_MEM_WRITE( "sigreturn(ucp)", ARG1, sizeof(struct vki_ucontext) ); + PRE_MEM_READ( "sigreturn(scp)", ARG1, sizeof(struct vki_ucontext) ); + PRE_MEM_WRITE( "sigreturn(scp)", ARG1, sizeof(struct vki_ucontext) ); } static void restore_mcontext(ThreadState *tst, struct vki_mcontext *sc) diff --git a/coregrind/m_syswrap/syswrap-x86-freebsd.c b/coregrind/m_syswrap/syswrap-x86-freebsd.c index 0c8da316f9..4fd1ce5011 100644 --- a/coregrind/m_syswrap/syswrap-x86-freebsd.c +++ b/coregrind/m_syswrap/syswrap-x86-freebsd.c @@ -1468,10 +1468,10 @@ PRE(sys_fake_sigreturn) struct vki_ucontext *uc; PRINT("sys_sigreturn ( %#" FMT_REGWORD "x )", ARG1); PRE_REG_READ1(long, "sigreturn", - struct vki_ucontext *, ucp); + struct vki_ucontext *, scp); - PRE_MEM_READ( "sigreturn(ucp)", ARG1, sizeof(struct vki_ucontext) ); - PRE_MEM_WRITE( "sigreturn(ucp)", ARG1, sizeof(struct vki_ucontext) ); + PRE_MEM_READ( "sigreturn(scp)", ARG1, sizeof(struct vki_ucontext) ); + PRE_MEM_WRITE( "sigreturn(scp)", ARG1, sizeof(struct vki_ucontext) ); vg_assert(VG_(is_valid_tid)(tid)); vg_assert(tid >= 1 && tid < VG_N_THREADS); diff --git a/coregrind/m_trampoline.S b/coregrind/m_trampoline.S index ad1db3cb9f..da96972323 100644 --- a/coregrind/m_trampoline.S +++ b/coregrind/m_trampoline.S @@ -899,7 +899,29 @@ VG_(trampoline_stuff_start): VG_(amd64_freebsd_SUBST_FOR_sigreturn): /* This is a very specific sequence which GDB uses to recognize signal handler frames. */ + movq $__NR_fake_sigreturn, %rax + + /* running the preprocessor on + * src/amd64.amd64/lib/libc/sigreturn.S + * gives + * .text; .p2align 4,0x90; .globl __sys_sigreturn; + * .type __sys_sigreturn,@function; __sys_sigreturn:; + * .cfi_startproc; .weak sigreturn; .equ sigreturn,__sys_sigreturn; + * .weak _sigreturn; .equ _sigreturn,__sys_sigreturn; + * mov $417,%eax; + * movq %rcx, %r10; + * syscall; jb .cerror; ret; .size __sys_sigreturn, . - __sys_sigreturn; + * .cfi_endproc + */ + + /* + * sigframe in sigframe-amd64-freebsd.c + * differs from sigframe in /usr/include/x86/sigframe.h + * by having the address to this trampoline first + * so I assume that the +8 is to get back to the + * FreeBSD sigframe + */ movq %rsp, %rdi addq $8,%rdi syscall |
|
From: Andreas A. <ar...@so...> - 2021-12-09 17:24:11
|
https://sourceware.org/git/gitweb.cgi?p=valgrind.git;h=99bf5dabf7865aaea7f2192373633e026c6fb16e commit 99bf5dabf7865aaea7f2192373633e026c6fb16e Author: Andreas Arnez <ar...@li...> Date: Thu Dec 9 15:27:41 2021 +0100 Bug 444481 - Don't unmap the vDSO on s390x Newer Linux kernels on s390x may use the vDSO as a "trampoline" for syscall restart. This means that the vDSO is no longer optional, and unmapping it may lead to a segmentation fault when a system call restart is performed. So far Valgrind has been unmapping the vDSO on s390x. Just don't do this anymore. Diff: --- NEWS | 1 + coregrind/m_initimg/initimg-linux.c | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index a0844428ef..5a15158403 100644 --- a/NEWS +++ b/NEWS @@ -44,6 +44,7 @@ are not entered into bugzilla tend to get forgotten about or ignored. 444242 s390x: Valgrind crashes on EXRL with negative offset 444399 arm64: unhandled instruction 0xC87F2D89 (LD{,A}XP and ST{,L}XP). == 434283 +444481 gdb_server test failures on s390x 444495 dhat/tests/copy fails on s390x 444571 PPC, fix the lxsibzx and lxsihzx so they only load their respective sized data. diff --git a/coregrind/m_initimg/initimg-linux.c b/coregrind/m_initimg/initimg-linux.c index 7d02d55678..95508ad1ed 100644 --- a/coregrind/m_initimg/initimg-linux.c +++ b/coregrind/m_initimg/initimg-linux.c @@ -892,7 +892,8 @@ Addr setup_client_stack( void* init_sp, # if !defined(VGP_ppc32_linux) && !defined(VGP_ppc64be_linux) \ && !defined(VGP_ppc64le_linux) \ && !defined(VGP_mips32_linux) && !defined(VGP_mips64_linux) \ - && !defined(VGP_nanomips_linux) + && !defined(VGP_nanomips_linux) \ + && !defined(VGP_s390x_linux) case AT_SYSINFO_EHDR: { /* Trash this, because we don't reproduce it */ const NSegment* ehdrseg = VG_(am_find_nsegment)((Addr)auxv->u.a_ptr); |