Re: [developer] ZFS atomics, 64-bit on 32-bit platforms

2019-10-11 Thread Garrett D'Amore
On 10/11/2019 4:51:27 PM, Richard Elling wrote: On Oct 11, 2019, at 4:47 PM, Garrett D'Amore mailto:garr...@damore.org]> wrote: On 10/11/2019 4:32:11 PM, Richard Elling mailto:richard.ell...@richardelling.com]> wrote: On Oct 11, 2019, at 2:50 PM, Garrett D'Amore

Re: [developer] ZFS atomics, 64-bit on 32-bit platforms

2019-10-11 Thread Richard Elling
> On Oct 11, 2019, at 4:47 PM, Garrett D'Amore wrote: > > >> On 10/11/2019 4:32:11 PM, Richard Elling >> wrote: >> >> >> >>> On Oct 11, 2019, at 2:50 PM, Garrett D'Amore >> > wrote: >>> >>> The issue is that you can't just arbitrarily throw a mutex out there

Re: [developer] ZFS atomics, 64-bit on 32-bit platforms

2019-10-11 Thread Garrett D'Amore
On 10/11/2019 4:32:11 PM, Richard Elling wrote: On Oct 11, 2019, at 2:50 PM, Garrett D'Amore mailto:garr...@damore.org]> wrote: The issue is that you can't just arbitrarily throw a mutex out there -- you have to have a place to *store* that, and you can't fit it inside the 64-bit value. 

Re: [developer] ZFS atomics, 64-bit on 32-bit platforms

2019-10-11 Thread Richard Elling
> On Oct 11, 2019, at 2:50 PM, Garrett D'Amore wrote: > > The issue is that you can't just arbitrarily throw a mutex out there -- you > have to have a place to *store* that, and you can't fit it inside the 64-bit > value. With a 64-bit ISA this isn't usually a problem, but with 32-bit ISAs

Re: [developer] ZFS atomics, 64-bit on 32-bit platforms

2019-10-11 Thread Garrett D'Amore
The issue is that you can't just arbitrarily throw a mutex out there -- you have to have a place to *store* that, and you can't fit it inside the 64-bit value.  With a 64-bit ISA this isn't usually a problem, but with 32-bit ISAs it is. The only way to store the mutex (which could just be a

Re: [developer] ZFS atomics, 64-bit on 32-bit platforms

2019-10-11 Thread Richard Elling
> On Oct 9, 2019, at 11:41 AM, Garrett D'Amore wrote: > > I don't think 32-bit compilers generally offer builtins for 64-bit atomics. > Frankly, they can't really unless the underlying ISA provides some additional > support for this in particular. Yes, that is why the builtins exist... the