tech-userlevel archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: PATCH libatomic



On 07.05.2020 05:56, Martin Husemann wrote:
> On Thu, May 07, 2020 at 05:43:02AM +0200, Kamil Rytarowski wrote:
>> I propose the following patch:
>>
>> http://netbsd.org/~kamil/patch-00250-libatomic.txt
> 
> +__inline static int
> +__futex(volatile uint32_t *uaddr, int op, int val, const struct timespec *timeout,
> +        volatile uint32_t *uaddr2, int val2, int val3)
> +{
> +        return syscall(SYS___futex, uaddr, op, val, timeout, uaddr2,
> +                        val2, val3);
> +}
> 
> Maybe it is not ready for prime time before we have finalized and published
> the futex api?
> 

I'm looking for early testers and bug fixes (if needed), especially on !x86.

Once the __futex API will be published this library can be considered as
ready for mainline.

>> Local changes:
> [..]
>> - fixed __atomic_compare_exchange_##n
> 
> What do you mean with that?
> 

Function prototype mismatch, missing weak/strong ordering support.

GCC caught it as it detects prototype mismatch with a local function.

Clang does not raise an error and it was overlooked in LLVM (?).
Possibly nobody built this file with GCC before me and it is still
unnoticed.

> Martin
> 


Attachment: signature.asc
Description: OpenPGP digital signature



Home | Main Index | Thread Index | Old Index