[systemd-devel] udev breaks hostap linkage of raw/user interfaces, causing wpa_supplicant problems
arvidjaar at gmail.com
Mon Mar 16 00:56:17 PDT 2015
On Mon, Mar 16, 2015 at 10:26 AM, Thomas Richter <thor at math.tu-berlin.de> wrote:
> Hi folks,
>> udev seems to create a problem here with the hostap (prism2) kernel
>> driver. Unlike many wifi devices, the hostap device driver always
>> creates paired interfaces, a raw interface (wifiX) and a network
>> interface (wlanX) that represents the configured network.
>> Unfortunately, udev (or hostap?) does not seem to be aware of this
>> linkage, and hence, if you have two wifi radios in your system, may
>> rename the second (wlanX) without the first (wifiX), and hence causing a
>> name mismatch between the two.
>> In general, this is not a problem, however, wpa_supplicant seems to
>> depend on the linkage of the names. Hence, if wifiX does not match
>> wlanX, wpa_supplicant will be unable to provide a WPA2 connection over a
>> hostap driven wifi connection.
>> Even worse, the complete procedure is completely untransparent to the
>> user, i.e. neither wpa_supplicant (nor network-manager, depending on
>> wpa_supplicant) nor network-manager provide a useful error message.
>> Any chance of fixing this problem? Is this "only" a configuration issue?
>> Is this an issue of hostap? Is this an issue of wpa_supplicant?
>> Either way, it took me several hours of figuring out what was wrong....
> One day passed, no useful pointers. Folks, sorry to say, but it is
> unacceptable if udev *breaks* the prism wifi.
I'm not convinced it is udev problem at all. For a start, hostap
driver allows to select different prefix instead if "wlan". If your
applications cannot handle it, they will be broken irrespectively of
udev. If they can handle it, where is the difference?
I would expect sysfs structure to reflect relationships between two
interfaces. In which case applications should use this information to
find matching interfaces.
More information about the systemd-devel