> However, hwspin_lock_request_specific() takes an unsigned int, which
> will truncate the value.

True. XArray uses ulong, but hwspinlocks are actually uint. I'll replace
the ULONG_MAX with UINT_MAX.

> > +           ret = hwspin_trylock(hwlock);
> > +           if (ret != -EBUSY) {
> 
> [Severity: Medium]
> Does this actually test the hardware lock exclusion?
> 
> hwspin_trylock() internally invokes spin_trylock() to acquire a local CPU
> software lock. On the second call, the local software spinlock will fail and
> immediately return -EBUSY without ever testing the actual hardware lock
> operations (like hwlock->bank->ops->trylock()).

Bummer, I was quite sure to have used hwspin_trylock_raw already here.
Seems to have fallen through the cracks.

v6 on the way...


Reply via email to