Re: [PATCH] elf: _dl_fixup*: make @reloc_arg 64-bit safe

2021-07-22 Thread Andreas Schwab
On Jul 22 2021, Vladimir Isaev via Libc-alpha wrote:

> diff --git a/elf/dl-runtime.c b/elf/dl-runtime.c
> index 9d0d941000..6099a44ffb 100644
> --- a/elf/dl-runtime.c
> +++ b/elf/dl-runtime.c
> @@ -56,7 +56,7 @@ _dl_fixup (
>  # ifdef ELF_MACHINE_RUNTIME_FIXUP_ARGS
>  ELF_MACHINE_RUNTIME_FIXUP_ARGS,
>  # endif
> -struct link_map *l, ElfW(Word) reloc_arg)
> +struct link_map *l, uintptr_t reloc_arg)

ElfW(Addr)?

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: ARC math test regressions (was Re: [PATCH v7 00/13] glibc port to ARC processors)

2020-07-02 Thread Andreas Schwab
On Jul 02 2020, Vineet Gupta via Libc-alpha wrote:

> Now acos can come from 2 places depending on LIBM_SVID_COMPAT
>  - math/w_acos_template.c <-- sets errno only
>  - math/w_acos_compat.c   <-- raises exception FE_INVALID
>
> For ARC, 1st variant is building, so explicit exception is NOT raised.

LIBM_SVID_COMPAT is a compat feature, thus not relevant and always off
for new ports.

It's a bug in the testsuite that it doesn't handle that case yet.

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: [PATCH v3 1/4] iee754: provide gcc builtins based generic sqrt functions

2020-06-03 Thread Andreas Schwab
s/iee754/ieee754/

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: __syscall_error (was Re: [PATCH v4 13/15] ARC: Build Infrastructure)

2020-04-01 Thread Andreas Schwab
On Apr 01 2020, Vineet Gupta via Libc-alpha wrote:

> Looking as RISCV code, they opencode __syscall_error for !IS_IN (libc) which 
> I was
> hoping to avoid.

But that is the right way to do it.  The syscall error handler must be
local to the library, it cannot afford to go through the PLT to call a
function in a different library here.

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: switching ARC to 64-bit time_t (Re: [RFC v6 07/23] RISC-V: Use 64-bit time_t and off_t for RV32 and RV64)

2020-02-24 Thread Andreas Schwab
On Feb 24 2020, Lukasz Majewski wrote:

> On Mon, 24 Feb 2020 11:23:51 +0100
> Andreas Schwab  wrote:
>
>> On Feb 24 2020, Lukasz Majewski wrote:
>> 
>> > If I add those functions as hidden_alias then those would be
>> > accessible inside glibc without PLT, but will not be exported (and
>> > redirection for Y2038 will not work).  
>> 
>> They aren't?  PLT avoidance is about internal references, and uses a
>> different name then the exported sybmol.
>> 
>
> I'm probably not aware of something - but as done in the following
> patch:
>
> https://github.com/lmajewski/y2038_glibc/commit/c96eeb73175961c4ac80fdd3b6adc132805387c9
>
> I do need to remove librt_hidden_proto / librt_hidden_def to have
> proper symbols visible when I do want to use redirections.

You cannot redirect to GLIBC_PRIVATE symbols, they are not suposed to be
used by public interfaces.  All public interfaces need to use official
versioned symbols.

Andreas.

-- 
Andreas Schwab, SUSE Labs, sch...@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: switching ARC to 64-bit time_t (Re: [RFC v6 07/23] RISC-V: Use 64-bit time_t and off_t for RV32 and RV64)

2020-02-24 Thread Andreas Schwab
On Feb 24 2020, Lukasz Majewski wrote:

> If I add those functions as hidden_alias then those would be accessible
> inside glibc without PLT, but will not be exported (and redirection for
> Y2038 will not work).

They aren't?  PLT avoidance is about internal references, and uses a
different name then the exported sybmol.

Andreas.

-- 
Andreas Schwab, SUSE Labs, sch...@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: switching ARC to 64-bit time_t (Re: [RFC v6 07/23] RISC-V: Use 64-bit time_t and off_t for RV32 and RV64)

2020-02-24 Thread Andreas Schwab
On Feb 24 2020, Lukasz Majewski wrote:

>> elf/check-localplt complains about the newly added symbols
>> 
>> Extra PLT reference: libc.so: __lutimes64
>> Extra PLT reference: libc.so: __wait4_time64
>> Extra PLT reference: libc.so: __setitimer64
>> Extra PLT reference: libc.so: __utime64
>> Extra PLT reference: libc.so: __timerfd_gettime64
>> Extra PLT reference: libc.so: __clock_settime64
>> Extra PLT reference: libc.so: __utimes64
>> Extra PLT reference: libc.so: __gettimeofday64
>> Extra PLT reference: libc.so: __clock_gettime64
>> Extra PLT reference: libc.so: __futimesat64
>> Extra PLT reference: libc.so: __clock_getres64
>> Extra PLT reference: libc.so: __futimes64
>> Extra PLT reference: libc.so: __futimens64
>> Extra PLT reference: libc.so: __utimensat64
>> Extra PLT reference: libc.so: __getrusage64
>> Extra PLT reference: libc.so: __timespec_get64
>> Extra PLT reference: libc.so: __getitimer64
>> Extra PLT reference: libc.so: __ppoll64
>> Extra PLT reference: libc.so: __timerfd_settime64
>> Extra PLT reference: libc.so: __clock_nanosleep_time64
>> Extra PLT reference: libc.so: __sched_rr_get_interval64
>> Extra PLT reference: libc.so: __settimeofday64
>> Extra PLT reference: librt.so: __timer_gettime64
>> Extra PLT reference: librt.so: __mq_timedreceive_time64
>> Extra PLT reference: librt.so: __mq_timedsend_time64
>> Extra PLT reference: librt.so: __timer_settime64
>> 
>
> The above problems are somewhat expected. Those are redirected symbols,
> which are exported as GLIBC_PRIVATE in several Versions files.
>
> I do guess that we will have a consensus if we add those as a "normal"
> exported symbols or keep them "private".

They need to grow hidden aliases.

Andreas.

-- 
Andreas Schwab, SUSE Labs, sch...@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: [PATCH] Remove STATFS_IS_STATFS64 conditional as it is zero in all ports

2020-02-19 Thread Andreas Schwab
I think STATFS_IS_STATFS64 should actually be set to 1 on all 64-bit
architectures execpt alpha?

Andreas.

-- 
Andreas Schwab, SUSE Labs, sch...@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: [RFC v6 07/23] RISC-V: Use 64-bit time_t and off_t for RV32 and RV64

2020-02-19 Thread Andreas Schwab
On Feb 19 2020, Vineet Gupta wrote:

> On 2/18/20 5:03 PM, Alistair Francis wrote:
>>>> +#define STAT_IS_KERNEL_STAT 1
>>> Isn't this irrelevant: seems to be only used for legacy 
>>> __NR_stat/__NR_stat64
>>> syscalls based__xstat()/__xstat64().
>> Is it? It seems to be used in a few places, including:
>> 
>> sysdeps/unix/sysv/linux/fxstatat.c
>> sysdeps/unix/sysv/linux/xstatconv.c
>
> AFAIK that is not part of the asm-generic syscall ABI which ARC, RISCV et al 
> use !

The latter is still included by everyone, though.

Andreas.

-- 
Andreas Schwab, SUSE Labs, sch...@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: Pass config-time variable to LIBC_SLIBDIR_RTLDDIR

2019-06-03 Thread Andreas Schwab
On Mai 31 2019, Alexey Brodkin  wrote:

> I guess mentioned change is not supposed to be reverted but then
> how do you think it's possible [if at all] to implement that kind of
> "automatic" setup of slibdir/rtlddir?

As the commit message says, you can reference makefile variables in the
value.

Andreas.

-- 
Andreas Schwab, SUSE Labs, sch...@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: Need for arch pthread-offsets.h (was Re: [PATCH v2 05/15] ARC: Atomics and Locking primitives)

2019-02-04 Thread Andreas Schwab
On Jan 31 2019, Vineet Gupta  wrote:

> However what was not obvious is adjustment to
> sysdeps//nptl/pthread-offsets.h to __PTHREAD_MUTEX_*_OFFSET. But these 
> don't
> seem to be *actually* used anywhere. Sure there are assert checks in
> pthread_mutext_init.c but what's the point: the struct is generic anyways. 
> IOW I'm
> not sure what port specific errors/inconsistency they are catching, other 
> than the
> fact that they need to be hand calculating when starting a new port.
>
> Am I missing something ?

The _OFFSET macros are for ensuring binary compatibility.

Andreas.

-- 
Andreas Schwab, SUSE Labs, sch...@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: [PATCH v2 05/15] ARC: Atomics and Locking primitives

2019-01-30 Thread Andreas Schwab
On Jan 29 2019, Vineet Gupta  wrote:

> +#define __PTHREAD_MUTEX_NUSERS_AFTER_KIND  1
> +#define __PTHREAD_MUTEX_USE_UNION  1

New ports should use the preferred values for these macros.

Andreas.

-- 
Andreas Schwab, SUSE Labs, sch...@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: [PATCH 17/21] ARC: testsuite fix: stdlib/tst-makecontext

2018-12-18 Thread Andreas Schwab
On Dez 18 2018, Vineet Gupta  wrote:

> diff --git a/sysdeps/unix/sysv/linux/arc/setcontext.S 
> b/sysdeps/unix/sysv/linux/arc/setcontext.S
> index 3f503c661d95..6ec2ec0ddc79 100644
> --- a/sysdeps/unix/sysv/linux/arc/setcontext.S
> +++ b/sysdeps/unix/sysv/linux/arc/setcontext.S
> @@ -79,6 +79,8 @@ weak_alias(__setcontext, setcontext)
>  
>  ENTRY(__startcontext)
>  
> + cfi_register (blink, r15)
> +

You should precede that with a dummy .cfi_label (see
sysdeps/riscv/start.S) to force the CFI into the FDE instead of the
CIE.  Also, can you use cfi_undefined instead?

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: [PATCH] tst-tzset: raise timeout to 10 seconds

2018-07-30 Thread Andreas Schwab
On Jul 30 2018, Joseph Myers  wrote:

> On Mon, 30 Jul 2018, Alexey Brodkin wrote:
>
>> diff --git a/timezone/tst-tzset.c b/timezone/tst-tzset.c
>> index 27f986b56dab..534f7acdf75f 100644
>> --- a/timezone/tst-tzset.c
>> +++ b/timezone/tst-tzset.c
>> @@ -25,7 +25,7 @@
>>  #include 
>>  #include 
>>  
>> -#define TIMEOUT 5
>> +#define TIMEOUT 10
>
> The timeout was set to 5 in commit 
> 112f28e88c4ea5afbd6050e71416a23db11e4adc to increase it from a default 2 
> seconds.  That was before the default timeout was changed to 20 seconds in 
> commit a28605b22946c708f0a5c4f06307e1a17650ced8.  In such cases I think we 
> should remove the timeout setting - explicit timeouts less than the 
> default are only appropriate where there is a strong reason to want to 
> *decrease* the default timeout.

There are a lot of tests that set TIMEOUT to less than 20.

Andreas.

-- 
Andreas Schwab, SUSE Labs, sch...@suse.de
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: glibc: nptl/tst-cancel17 and librt issue

2017-11-21 Thread Andreas Schwab
On Nov 21 2017, Vineet Gupta <vineet.gup...@synopsys.com> wrote:

> the link cmd for build/nptl/librt.so.

There is no librt.so in nptl.

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: glibc: nptl/tst-cancel17 and librt issue

2017-11-21 Thread Andreas Schwab
On Nov 21 2017, Vineet Gupta <vineet.gup...@synopsys.com> wrote:

> The problem is not specific subdirs=nptl, it happens for vanilla make
> check too.

As I said, make all before make check to have an up-to-date build.

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: glibc: nptl/tst-cancel17 and librt issue

2017-11-21 Thread Andreas Schwab
On Nov 21 2017, Vineet Gupta <vineet.gup...@synopsys.com> wrote:

> make subdirs=nptl check fails as librt.so fails to link due to missing
> pthread symbols. The real librt built does have libpthread.so in its link
> cmd hence is fine, but not this librt.

Don't do that then.  If you want to take shortcuts you need to know what
you are doing.  Before running make check you should make all to have
everything up-to-date.

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc


Re: [patch V4] lib: GCD: Use binary GCD algorithm instead of Euclidean

2016-05-07 Thread Andreas Schwab
"George Spelvin" <li...@horizon.com> writes:

> Your benchmark code doesn't have to have a separate code path if
> __x86_64__; rdtsc works on 32-bit code just as well.

Take a look at the CC: list.

Andreas.

-- 
Andreas Schwab, sch...@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

___
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc