From patchwork Sun Jan 3 21:08:20 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kalle Valo X-Patchwork-Id: 70516 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter.kernel.org (8.14.3/8.14.2) with ESMTP id o03LGVmD026163 for ; Sun, 3 Jan 2010 21:16:31 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753020Ab0ACVQ2 (ORCPT ); Sun, 3 Jan 2010 16:16:28 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752984Ab0ACVQ1 (ORCPT ); Sun, 3 Jan 2010 16:16:27 -0500 Received: from emh03.mail.saunalahti.fi ([62.142.5.109]:52459 "EHLO emh03.mail.saunalahti.fi" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752797Ab0ACVQZ (ORCPT ); Sun, 3 Jan 2010 16:16:25 -0500 Received: from saunalahti-vams (vs3-12.mail.saunalahti.fi [62.142.5.96]) by emh03-2.mail.saunalahti.fi (Postfix) with SMTP id 88CCCEBC51 for ; Sun, 3 Jan 2010 23:08:22 +0200 (EET) Received: from emh02.mail.saunalahti.fi ([62.142.5.108]) by vs3-12.mail.saunalahti.fi ([62.142.5.96]) with SMTP (gateway) id A077D9682E3; Sun, 03 Jan 2010 23:08:22 +0200 Received: from [127.0.1.1] (a91-155-131-184.elisa-laajakaista.fi [91.155.131.184]) by emh02.mail.saunalahti.fi (Postfix) with ESMTP id 338072BD45 for ; Sun, 3 Jan 2010 23:08:21 +0200 (EET) Subject: [PATCH 9/9] wl1251: fix sleep related error paths in wl1251_op_bss_info_changed() To: linux-wireless@vger.kernel.org From: Kalle Valo Date: Sun, 03 Jan 2010 23:08:20 +0200 Message-ID: <20100103210820.29287.1508.stgit@tikku> In-Reply-To: <20100103210552.29287.20384.stgit@tikku> References: <20100103210552.29287.20384.stgit@tikku> User-Agent: StGit/0.15 MIME-Version: 1.0 X-Antivirus: VAMS Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org diff --git a/drivers/net/wireless/wl12xx/wl1251_main.c b/drivers/net/wireless/wl12xx/wl1251_main.c index 4728983..f17ce06 100644 --- a/drivers/net/wireless/wl12xx/wl1251_main.c +++ b/drivers/net/wireless/wl12xx/wl1251_main.c @@ -946,7 +946,7 @@ static void wl1251_op_bss_info_changed(struct ieee80211_hw *hw, skb->data, skb->len); dev_kfree_skb(skb); if (ret < 0) - goto out; + goto out_sleep; if (wl->bss_type != BSS_TYPE_IBSS) { ret = wl1251_join(wl, wl->bss_type, wl->channel, @@ -1018,7 +1018,7 @@ static void wl1251_op_bss_info_changed(struct ieee80211_hw *hw, ret = wl1251_acx_cts_protect(wl, CTSPROTECT_DISABLE); if (ret < 0) { wl1251_warning("Set ctsprotect failed %d", ret); - goto out; + goto out_sleep; } } @@ -1029,7 +1029,7 @@ static void wl1251_op_bss_info_changed(struct ieee80211_hw *hw, if (ret < 0) { dev_kfree_skb(beacon); - goto out; + goto out_sleep; } ret = wl1251_cmd_template_set(wl, CMD_PROBE_RESP, beacon->data, @@ -1038,13 +1038,13 @@ static void wl1251_op_bss_info_changed(struct ieee80211_hw *hw, dev_kfree_skb(beacon); if (ret < 0) - goto out; + goto out_sleep; ret = wl1251_join(wl, wl->bss_type, wl->beacon_int, wl->channel, wl->dtim_period); if (ret < 0) - goto out; + goto out_sleep; } out_sleep: