On Tue, 2011-04-26 at 08:32 +0200, Stanislaw Gruszka wrote: > Warning correctly indicate a bug. Please try below patch. > > diff --git a/drivers/net/wireless/iwlegacy/iwl4965-base.c b/drivers/net/wireless/iwlegacy/iwl4965-base.c > index 58a2e63..46966e9 100644 > --- a/drivers/net/wireless/iwlegacy/iwl4965-base.c > +++ b/drivers/net/wireless/iwlegacy/iwl4965-base.c > @@ -2988,15 +2988,15 @@ static void iwl4965_bg_txpower_work(struct work_struct *work) > struct iwl_priv *priv = container_of(work, struct iwl_priv, > txpower_work); > > + mutex_lock(&priv->mutex); > + > /* If a scan happened to start before we got here > * then just return; the statistics notification will > * kick off another scheduled work to compensate for > * any temperature delta we missed here. */ > if (test_bit(STATUS_EXIT_PENDING, &priv->status) || > test_bit(STATUS_SCANNING, &priv->status)) > - return; > - > - mutex_lock(&priv->mutex); > + goto out; > > /* Regardless of if we are associated, we must reconfigure the > * TX power since frames can be sent on non-radar channels while > @@ -3006,7 +3006,7 @@ static void iwl4965_bg_txpower_work(struct work_struct *work) > /* Update last_temperature to keep is_calib_needed from running > * when it isn't needed... */ > priv->last_temperature = priv->temperature; > - > +out: > mutex_unlock(&priv->mutex); > } > 0) This (compiles and) runs without apparent problems. I haven't seen this WARNING with this patch applied. But please note that I actually haven't seen that WARNING with (unpatched) rc4 since reporting it (last Friday). 1) So feel free to add a "Reported-by:" tag and, perhaps, a "Tested-by:" tag too. Paul Bolle -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html