[head up!] WiFi drivers changes

O. Hartmann ohartman at zedat.fu-berlin.de
Thu Aug 27 16:33:08 UTC 2015


Am Fri, 7 Aug 2015 16:50:23 -0700
Adrian Chadd <adrian.chadd at gmail.com> schrieb:

> Hi,
> 
> Gleb/others doing this: you have 4 days to figure out what's wrong
> with things, or I'm backing all of this work out.
> 
> Thanks,
> 
> 
> -adrian
> 
> 
> On 7 August 2015 at 08:52, O. Hartmann <ohartman at zedat.fu-berlin.de> wrote:
> > Am Thu, 6 Aug 2015 18:13:55 +0300
> > Gleb Smirnoff <glebius at FreeBSD.org> schrieb:
> >
> >>   Hi!
> >>
> >>   As part of the "opaque ifnet project" [1], all 802.11 (WiFi) drivers
> >> undergo change of not being an interface anymore. Historically in FreeBSD
> >> 802.11 stack, 802.11 devices called if_attach() and created an interface.
> >> Later this was generalized and real functioning interface is created by
> >> net80211 stack. However, remnant of parent interface remained. If you
> >> are running Intel Centrino wireless, then you got iwn0 interface and
> >> wlan0 interface. However, the former doesn't do anything. You can't
> >> assign addresses to it or modify any of it parameters. Or you can
> >> modify them, but that affects nothing.
> >>
> >> This superfluous ifnet on the list entangles the net80211 stack and
> >> also is on the way of [1]. So, decision was made to remove it. I
> >> already did preparatory commits back in May, and now it is time to
> >> finish that.
> >>
> >> The patch is:
> >>
> >> https://reviews.freebsd.org/D2655
> >>
> >> And the Wiki page for it is:
> >>
> >> https://wiki.freebsd.org/projects/ifnet/net80211
> >>
> >> The patch modifies every driver, and diff is bulky. However, changes
> >> are mechanical and simple, most drivers appeared to work after first
> >> run. Most converted drivers are tested to work.
> >>
> >> This is list of drivers that are not tested, due to lack of testers:
> >>
> >>       mwl, ipw, bwn, wi, upgt, uath.
> >>
> >> But, as said, changes are mechanical and probability is 95% that
> >> they will work.
> >>
> >> The only complex one is ndis(4). It could be broken by conversion.
> >> Since I already got a tester volunteer, I will fix it quickly if
> >> anything happens.
> >>
> >> Another untrivial one is wtap(4), which is not connected to the
> >> build and appeared to be broken even before conversion. Anyway,
> >> I made it compilable.
> >>
> >> Now, for the configuration. The sequence of commands you need
> >> to run to configure a WiFi interface doesn't change. As before
> >> it is:
> >>
> >> ifconfig wlan0 create wlandev iwn0
> >> ifconfig wlan0 $foo
> >>
> >> Your rc.conf doesn't need any changes. As before:
> >>
> >> wlans_iwn0="wlan0"
> >> ifconfig_wlan0="DHCP WPA"
> >>
> >> However, iwn0 disappeared from the 'ifconfig -l'. It is still
> >> in devinfo, or in dmesg. For the sake of installers or other
> >> configuration software, a sysctl is provided:
> >>
> >> net.wlan.devices: iwn0
> >>
> >> The /etc subsystem needs to be tweaked. Previously the wlan(4)
> >> interfaces were created in childif_create(), and the script
> >> did check for presence of parent interface. In my patch I
> >> provided wlans_up(), that doesn't check. The code in D2655
> >> now works correctly both on patched and on unpatched kernel.
> >>
> >> Alternatively, I could tweak childif_create() to use net.wlan.devices
> >> instead of 'ifconfig -l'. Or, to use them both, to work on older
> >> and on newer kernels?
> >>
> >> I am not sure which path with /etc is better, so seeking for
> >> help with that.
> >>
> >
> > After updating to FreeBSD 11.0-CURRENT #0 r286415: Fri Aug  7 17:22:43 CEST 2015
> > amd64, several APs won't startup anymore:
> >
> > [...]
> > Starting hostapd.
> > Configuration file: /etc/hostapd.conf
> > bsd_set_if_media: SIOCSIFMEDIA Device not configured
> > bsd_init: failed to set operation mode
> > bsd driver initialization failed.
> > wlan0: interface state UNINITIALIZED->DISABLED
> > wlan0: AP-DISABLED
> > hostapd_free_hapd_data: Interface wlan0 wasn't started
> > ELOOP: remaining socket: sock=5 eloop_data=0x801c47100 user_data=0x0 handler=0x41a0e0
> > /etc/rc.d/hostapd: WARNING: failed to start hostapd
> _______________________________________________
> freebsd-current at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"

Again,
with the most recent changes as of r287211, hostapd doens't start my WiFi AP anymore
(FreeBSD 11.0-CURRENT #7 r287169: Wed Aug 26 20:26:49 CEST 2015 amd64 does!).
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 473 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/freebsd-net/attachments/20150827/abfd8698/attachment.bin>


More information about the freebsd-net mailing list