[PATCH 1/5] asm-generic: add smp_vcond_load_relaxed()
Okanovic, Haris
harisokn at amazon.com
Wed Nov 6 09:06:53 PST 2024
On Tue, 2024-11-05 at 11:36 -0800, Christoph Lameter (Ampere) wrote:
> CAUTION: This email originated from outside of the organization. Do not click links or open attachments unless you can confirm the sender and know the content is safe.
>
>
>
> On Tue, 5 Nov 2024, Haris Okanovic wrote:
>
> > +/**
> > + * smp_vcond_load_relaxed() - (Spin) wait until an expected value at address
> > + * with no ordering guarantees. Spins until `(*addr & mask) == val` or
> > + * `nsecs` elapse, and returns the last observed `*addr` value.
> > + *
> > + * @nsecs: timeout in nanoseconds
>
> Please use an absolute time in nsecs instead of a timeout.
I went with relative time because it clock agnostic. I agree deadline
is nicer because it can propagate down layers of functions, but it pins
the caller to single time base.
> You do not know
> what will happen to your execution thread until the local_clock_noinstr()
> is run.
Not sure what you mean. Could you perhaps give an example where it
would break?
>
>
One alternative is to do timekeeping with delay() in all cases, to
decouple from sched/clock.
More information about the linux-arm-kernel
mailing list