Re: [PATCH v7 10/19] xen/riscv: introduce atomic.h

2024-04-18 Thread Jan Beulich
On 09.04.2024 09:39, Oleksii wrote: > On Mon, 2024-04-08 at 10:23 +0200, Jan Beulich wrote: >> On 03.04.2024 12:20, Oleksii Kurochko wrote: >>> +/* >>> + * Only CONFIG_GENERIC_ATOMIC64=y was ported to Xen that is the >>> reason why >>> + * last argument of ATOMIC_FETCH_OP, ATOMIC_OP_RETURN isn't

Re: [PATCH v7 10/19] xen/riscv: introduce atomic.h

2024-04-12 Thread Oleksii
On Fri, 2024-04-12 at 12:39 +0200, Oleksii wrote: > On Mon, 2024-04-08 at 10:23 +0200, Jan Beulich wrote: > > > +static always_inline void _add_sized(volatile void *p, > > > + unsigned long x, unsigned > > > int > > > size) > > > +{ > > > +    switch ( size ) >

Re: [PATCH v7 10/19] xen/riscv: introduce atomic.h

2024-04-12 Thread Oleksii
On Mon, 2024-04-08 at 10:23 +0200, Jan Beulich wrote: > > +static always_inline void _add_sized(volatile void *p, > > + unsigned long x, unsigned int > > size) > > +{ > > +    switch ( size ) > > +    { > > +    case 1: writeb(read_atomic((volatile uint8_t *)p)

Re: [PATCH v7 10/19] xen/riscv: introduce atomic.h

2024-04-09 Thread Oleksii
On Mon, 2024-04-08 at 10:23 +0200, Jan Beulich wrote: > On 03.04.2024 12:20, Oleksii Kurochko wrote: > > --- /dev/null > > +++ b/xen/arch/riscv/include/asm/atomic.h > > @@ -0,0 +1,261 @@ > > +/* SPDX-License-Identifier: GPL-2.0-only */ > > +/* > > + * Taken and modified from Linux. > > + * > > + *

Re: [PATCH v7 10/19] xen/riscv: introduce atomic.h

2024-04-08 Thread Jan Beulich
On 03.04.2024 12:20, Oleksii Kurochko wrote: > --- /dev/null > +++ b/xen/arch/riscv/include/asm/atomic.h > @@ -0,0 +1,261 @@ > +/* SPDX-License-Identifier: GPL-2.0-only */ > +/* > + * Taken and modified from Linux. > + * > + * The following changes were done: > + * - *

[PATCH v7 10/19] xen/riscv: introduce atomic.h

2024-04-03 Thread Oleksii Kurochko
Initially the patch was introduced by Bobby, who takes the header from Linux kernel. The following changes were done on top of Bobby's changes: - atomic##prefix##_*xchg_*(atomic##prefix##_t *v, c_t n) were updated to use__*xchg_generic() - drop casts in write_atomic() as they are unnecessary