lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Thu, 16 Jun 2016 15:12:52 +0000 (UTC)
From:	Kalle Valo <kvalo@...eaurora.org>
To:	Rafał Miłecki <zajec5@...il.com>
Cc:	Rafał Miłecki <zajec5@...il.com>,
	Brett Rudley <brudley@...adcom.com>,
	Arend van Spriel <arend@...adcom.com>,
	"Franky (Zhenhui) Lin" <frankyl@...adcom.com>,
	Hante Meuleman <meuleman@...adcom.com>,
	Pieter-Paul Giesberts <pieterpg@...adcom.com>,
	linux-wireless@...r.kernel.org (open list:BROADCOM BRCM80211
	IEEE802.11n WIRELESS DRIVER),
	brcm80211-dev-list@...adcom.com (open list:BROADCOM BRCM80211
	IEEE802.11n WIRELESS DRIVER),
	netdev@...r.kernel.org (open list:NETWORKING DRIVERS),
	linux-kernel@...r.kernel.org (open list)
Subject: Re: [V2,
 next] brcmfmac: don't remove interface on link down firmware event

Rafał Miłecki wrote:
> There are two firmware events we handle similarly in brcmfmac:
> BRCMF_E_LINK and BRCMF_E_IF. The difference from firmware point of view
> is that the first one means BSS remains present in the firmware. Trying
> to (re)create it (e.g. when adding new virtual interface) will result in
> an error.
> 
> Current code treats both events in a similar way. It removes Linux
> interface for each of them. It works OK with e.g. BCM43602. Its firmware
> generates both events for each interface. It means we get BRCMF_E_LINK
> and remove interface. That is soon followed by BRCMF_E_IF which means
> BSS was also removed in a firmware. The only downside of this is a
> harmless error like:
> [  208.643180] brcmfmac: brcmf_fweh_call_event_handler: no interface object
> 
> Unfortunately BCM4366 firmware doesn't automatically remove BSS and so
> it doesn't generate BRCMF_E_IF. In such case we incorrectly remove Linux
> interface on BRCMF_E_LINK as BSS is still present in the firmware. It
> results in an error when trying to re-create virtual interface, e.g.:
> > iw phy phy1 interface add wlan1-1 type __ap
> [ 3602.929199] brcmfmac: brcmf_ap_add_vif: timeout occurred
> command failed: I/O error (-5)
> 
> With this patch we don't remove Linux interface while firmware keeps
> BSS. Thanks to this we keep a consistent states of host driver and
> device firmware.
> 
> Further improvement should be to mark BSS as disabled and remove
> interface on BRCMF_E_LINK. Then we should add support for reusing
> BSS-es.
> 
> Signed-off-by: Rafał Miłecki <zajec5@...il.com>

Thanks, 1 patch applied to wireless-drivers-next.git:

fd3667a8d1cb brcmfmac: don't remove interface on link down firmware event

-- 
Sent by pwcli
https://patchwork.kernel.org/patch/9140237/

Powered by blists - more mailing lists