On Wed, Jun 28, 2017 at 06:45:14AM -0700, Davidlohr Bueso wrote: > On Tue, 27 Jun 2017, Luis R. Rodriguez wrote: > > > diff --git a/include/linux/swait.h b/include/linux/swait.h > > index 4a4e180d0a35..14fcf23cece4 100644 > > --- a/include/linux/swait.h > > +++ b/include/linux/swait.h > > @@ -29,7 +29,10 @@ > > * > > * As a side effect of this; the data structures are slimmer. > > * > > - * One would recommend using this wait queue where possible. > > So I think this was added due to the smaller footprint and fewer > cycles that swait has compared to the traditional (bulkier) > waitqueues. While probably not worth it, I guess we could offer > super-simple waitqueues (sswait? :-) which do not have the rt caveats > and uses a regular spinlock. The wakeup_all() call would not drop > the lock upon every wakeup as we are stripping the waitqueue not > for determinism, but for overhead. To mitigate this, we might > also want to use wake_q for reduced hold q->lock hold times. > > But I don't think its worth yet another wait interface. > Alternatively, it crossed my mind we could also have wakeup_all() > use in the regular waitqueues, but I'd have to audit all the > current users to make sure we could actually do this.
But this open-welcoming invite for swait then, should it go? Luis