Return-path: Received: from ox1.aei.mpg.de ([194.94.224.6]:56192 "EHLO ox1.aei.mpg.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751464AbYJ0S7h (ORCPT ); Mon, 27 Oct 2008 14:59:37 -0400 Date: Mon, 27 Oct 2008 20:00:12 +0100 From: "Carlos R. Mafra" To: Johannes Berg Cc: Soeren Sonnenburg , "Rafael J. Wysocki" , linux-kernel@vger.kernel.org, tomas.winkler@intel.com, "John W. Linville" , linux-wireless@vger.kernel.org Subject: Re: Suspend to RAM regression in 2.6.28-rc2 (bisected) Message-ID: <20081027190011.GA3951@localhost.aei.mpg.de> (sfid-20081027_195953_925917_EA4DA195) References: <20081027162054.GA4015@localhost.aei.mpg.de> <200810271832.40717.rjw@sisk.pl> <1225130844.4466.0.camel@localhost> <1225132278.3796.32.camel@johannes.berg> <1225133082.3796.35.camel@johannes.berg> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii In-Reply-To: <1225133082.3796.35.camel@johannes.berg> Sender: linux-wireless-owner@vger.kernel.org List-ID: On Mon 27.Oct'08 at 19:44:42 +0100, Johannes Berg wrote: > On Mon, 2008-10-27 at 19:31 +0100, Johannes Berg wrote: > > On Mon, 2008-10-27 at 19:07 +0100, Soeren Sonnenburg wrote: > > > > > > Johannes, can you pls have a look? > > > > I did, and I have no idea. Makes no sense at all. > > The only thing I can remotely think of is that iwlwifi doesn't like > being called back from within the call that it did to mac80211, which > obviously happens here. But I have no idea, the code as it stands is > correct, just the interaction with iwlwifi's resume seems to be broken. > > Try this patch instead: Yep, with this patch it also works! > --- everything.orig/drivers/net/wireless/iwlwifi/iwl-agn.c 2008-10-27 19:44:12.000000000 +0100 > +++ everything/drivers/net/wireless/iwlwifi/iwl-agn.c 2008-10-27 19:44:15.000000000 +0100 > @@ -2084,7 +2084,6 @@ static void iwl_alive_start(struct iwl_p > iwl4965_error_recovery(priv); > > iwl_power_update_mode(priv, 1); > - ieee80211_notify_mac(priv->hw, IEEE80211_NOTIFY_RE_ASSOC); > > if (test_and_clear_bit(STATUS_MODE_PENDING, &priv->status)) > iwl4965_set_mode(priv, priv->iw_mode); > > > johannes