diff options
author | Rajkumar Manoharan <rmanohar@qti.qualcomm.com> | 2014-04-23 13:37:57 +0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2014-04-25 05:46:22 +0400 |
commit | 8c7ae357cc5b6bd037ad2d666e9f3789cf882925 (patch) | |
tree | a4bce2f031a1ddc0120a5afd58eea55ed2dce55a /drivers/net/wireless/ath/ath9k/pci.c | |
parent | c82552c5b0cb1735dbcbad78b1ffc6d3c212dc56 (diff) | |
download | linux-8c7ae357cc5b6bd037ad2d666e9f3789cf882925.tar.xz |
ath9k: fix race in setting ATH_OP_INVALID
The commit "ath9k: move sc_flags to ath_common" moved setting
ATH_OP_INVALID flag below ieee80211_register_hw. This is causing
the flag never being cleared randomly as the drv_start is called
prior to setting flag. Fix this by setting the flag prior to
register_hw.
Signed-off-by: Rajkumar Manoharan <rmanohar@qti.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/pci.c')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/pci.c | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/drivers/net/wireless/ath/ath9k/pci.c b/drivers/net/wireless/ath/ath9k/pci.c index 25304adece57..914dbc6b1720 100644 --- a/drivers/net/wireless/ath/ath9k/pci.c +++ b/drivers/net/wireless/ath/ath9k/pci.c @@ -784,7 +784,6 @@ static int ath_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) { struct ath_softc *sc; struct ieee80211_hw *hw; - struct ath_common *common; u8 csz; u32 val; int ret = 0; @@ -877,10 +876,6 @@ static int ath_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) wiphy_info(hw->wiphy, "%s mem=0x%lx, irq=%d\n", hw_name, (unsigned long)sc->mem, pdev->irq); - /* Will be cleared in ath9k_start() */ - common = ath9k_hw_common(sc->sc_ah); - set_bit(ATH_OP_INVALID, &common->op_flags); - return 0; err_init: |