• Sven Neumann's avatar
    cfg80211: really ignore the regulatory request · a203c2aa
    Sven Neumann authored
    At the beginning of wiphy_update_regulatory() a check is performed
    whether the request is to be ignored. Then the request is sent to
    the driver nevertheless. This happens even if last_request points
    to NULL, leading to a crash in the driver:
    
     [<bf01d864>] (lbs_set_11d_domain_info+0x28/0x1e4 [libertas]) from [<c03b714c>] (wiphy_update_regulatory+0x4d0/0x4f4)
     [<c03b714c>] (wiphy_update_regulatory+0x4d0/0x4f4) from [<c03b4008>] (wiphy_register+0x354/0x420)
     [<c03b4008>] (wiphy_register+0x354/0x420) from [<bf01b17c>] (lbs_cfg_register+0x80/0x164 [libertas])
     [<bf01b17c>] (lbs_cfg_register+0x80/0x164 [libertas]) from [<bf020e64>] (lbs_start_card+0x20/0x88 [libertas])
     [<bf020e64>] (lbs_start_card+0x20/0x88 [libertas]) from [<bf02cbd8>] (if_sdio_probe+0x898/0x9c0 [libertas_sdio])
    
    Fix this by returning early. Also remove the out: label as it is
    not any longer needed.
    Signed-off-by: default avatarSven Neumann <s.neumann@raumfeld.com>
    Cc: linux-wireless@vger.kernel.org
    Cc: Johannes Berg <johannes@sipsolutions.net>
    Cc: Daniel Mack <daniel@zonque.org>
    Cc: stable@kernel.org
    Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
    a203c2aa
reg.c 58.7 KB