[PATCH v12 6/7] arm64: futex: support futex with FEAT_LSUI

Yeoreum Yun yeoreum.yun at arm.com
Tue Feb 17 01:56:21 PST 2026


Hi Catalin,
> On Tue, Feb 10, 2026 at 05:17:46PM +0000, Yeoreum Yun wrote:
> > > On Wed, Jan 21, 2026 at 07:06:21PM +0000, Yeoreum Yun wrote:
> > > > +
> > > > +	if (futex_on_lo) {
> > > > +		oval64.lo_futex.val = oldval;
> > > > +		ret = get_user(oval64.lo_futex.other, uaddr + 1);
> > > > +	} else {
> > > > +		oval64.hi_futex.val = oldval;
> > > > +		ret = get_user(oval64.hi_futex.other, uaddr - 1);
> > > > +	}
> > >
> > > and here use
> > >
> > > 	get_user(oval64.raw, uaddr64);
> > > 	futex[futex_pos] = oldval;
> >
> > But there is another feedback about this
> > (though I did first similarly with your suggestion -- use oval64.raw):
> >   https://lore.kernel.org/all/aXDZGhFQDvoSwdc_@willie-the-truck/
>
> Do you mean the 64-bit read? You can do a 32-bit uaccess, something
> like:
>
> 	int other_pos = futex_pos ^ 1;
> 	get_user(futex[other_pos], (u32 __user *)uaddr64 + other_pos);

Oh, my asking was whether we use 64 bits get_user() or
use 32 bits get_user() and what is better among them.
TBH, I don't think there wouldn't be a much difference but
want to check again whether there's overlooked except Will pointed out.


--
Sincerely,
Yeoreum Yun



More information about the linux-arm-kernel mailing list