> On Dec 6, 2017, at 17:49, Ingo Molnar <[email protected]> wrote:
>
> This exposes some waitqueue internals, but AFAICS the FUSE code already does
> a
> similar trick with fiq->waitq.lock so there's precedent.
What about waitqueue_lock() and waitqueue_unlock() helpers that
lock and unlock, to avoid exposing the internals? Or would that add
confusion by making users think they need their own waitqueue locking?
Alternately, a helper that returns the pointer to the lock:
#define waitqueue_lockp(wq) &((wq)->lock)
Used like the following:
spin_lock_irqsave(waitqueue_lockp(&ep->wq), flags);
Cheers, Andreas