On Wed, 17 Nov 2010 08:10:32 +0300 Dan Carpenter <error27@xxxxxxxxx> wrote: > We return here with the lock held and IRQs disabled by mistake. > > Signed-off-by: Dan Carpenter <error27@xxxxxxxxx> > > diff --git a/drivers/dca/dca-core.c b/drivers/dca/dca-core.c > index b98c676..b4c95be 100644 > --- a/drivers/dca/dca-core.c > +++ b/drivers/dca/dca-core.c > @@ -110,8 +110,10 @@ static void unregister_dca_providers(void) > > /* at this point only one domain in the list is expected */ > domain = list_first_entry(&dca_domains, struct dca_domain, node); > - if (!domain) > + if (!domain) { > + spin_unlock_irqrestore(&dca_lock, flags); > return; > + } > > list_for_each_entry_safe(dca, _dca, &domain->dca_providers, node) { > list_del(&dca->node); I think the code's just bogus, actually. list_first_entry(&dca_domains) can't return NULL. -- To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html