On 11/05/2017 02:03 AM, Waldemar Brodkorb wrote:
Hi Alexey,
the attached patch fixes at least 3 test suite errors for me.
tst-cancel20/21/4.
Tested with latest 2017.09 ARC binutils/gcc.
Okay to apply?
best regards
Waldemar
Are you sure it is the list above.
I presume,
https://tests.embedded-test.org/uClibc-ng/1.0.26/REPORT.arcv2.libc.uClibc-ng-1.0.26
didn't have this fix and yet the tests mentioned above are PASS there.
The reason I ask is because in my experiments here with ARC GNU 2017.09 + uClibc
with and w/o this patch (actually not exactly same, but similar - attached), I
don't see any consistent PASS(es)
There are some changes to say tst-kill6, tst-oncex3 etc but if you run them 5
times they seem to PASS/FAIL randomly - in either setups
So this patch is not fixing anything IMO. We need to really fix the inherent race
in these tests.
BTW I did post a test case fix for tst-cancel2 and that is now consistently
PASS.
-Vineet
>From 055c35bed580c8946feaba4ba8a1f61b550f48f6 Mon Sep 17 00:00:00 2001
From: Cupertino Miranda <cmira...@synopsys.com>
Date: Tue, 21 Feb 2017 17:05:22 +0100
Subject: [PATCH] Patch to clobber blink that works.
---
libc/sysdeps/linux/arc/bits/syscalls.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/libc/sysdeps/linux/arc/bits/syscalls.h b/libc/sysdeps/linux/arc/bits/syscalls.h
index 248ef78..92c1035 100644
--- a/libc/sysdeps/linux/arc/bits/syscalls.h
+++ b/libc/sysdeps/linux/arc/bits/syscalls.h
@@ -68,6 +68,7 @@ extern int __syscall_error (int);
#define INLINE_SYSCALL(name, nr_args, args...) \
({ \
register int __res __asm__("r0"); \
+ __asm__ volatile ("" : : : "blink"); \
__res = INTERNAL_SYSCALL_NCS(__NR_##name, , nr_args, args); \
if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P ((__res), ), 0)) \
{ \
@@ -81,6 +82,7 @@ extern int __syscall_error (int);
#define INLINE_SYSCALL_NCS(num, nr_args, args...) \
({ \
register int __res __asm__("r0"); \
+ __asm__ volatile ("" : : : "blink"); \
__res = INTERNAL_SYSCALL_NCS(num, , nr_args, args); \
if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P ((__res), ), 0)) \
{ \
--
2.9.0
_______________________________________________
devel mailing list
devel@uclibc-ng.org
https://mailman.uclibc-ng.org/cgi-bin/mailman/listinfo/devel