Re: [PATCH] usbhid: Fix lockdep unannotated irqs-off warning

From: Jiri Kosina
Date: Wed Mar 02 2016 - 03:37:28 EST


On Wed, 2 Mar 2016, Sedat Dilek wrote:
>
> static bool start_flush_work(struct work_struct *work, struct wq_barrier *barr)
> {
> struct worker *worker = NULL;
> struct worker_pool *pool;
> struct pool_workqueue *pwq;
>
> might_sleep();
>
> local_irq_disable();
> pool = get_work_pool(work);
> if (!pool) {
> local_irq_enable();
> return false;
> }
>
> spin_lock(&pool->lock); <--- XXX: spin_lock_irq() ???

No, this is fine. IRQs are unconditionally disabled a few lines above.

--
Jiri Kosina
SUSE Labs