The r8712u driver from the staging area has stopped working in Fedora 25. This driver supports (among others) my emergency USB DLink DWA-130 adapter that I use when the laptop's built in wireless (Qualcomm Atheros QCA9377 802.11ac) is "too advanced" to connect to some old wireless router.
The r8712u driver works just fine in Fedora 24 and it seems to be substantially unchanged.
I ran 'modinfo r8712u' on both F24 and F25 and diff'd them. The only differences are in the filesystem locations and labelling. There was no other substantial difference.
I've monitored dmesg while plugging the DLink adapter in and it's apparent that 1 - it is detected with proper vendor and product IDs. 2 - the r8712u module is selected and registered. 3 - the correct firmware is loaded from rtlwifi/rtl8712u.bin 4 - an endless stream of messages ensues: [ 262.524809] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready and, of course, the new interface never becomes available to NetworkManager.
What's gone wrong? Why does the same driver work in Fedora 24 but not in Fedora 25? How do I regain operability?
On 02/07/2017 12:54 PM, David A. De Graaf wrote:
The r8712u driver from the staging area has stopped working in Fedora 25. This driver supports (among others) my emergency USB DLink DWA-130 adapter that I use when the laptop's built in wireless (Qualcomm Atheros QCA9377 802.11ac) is "too advanced" to connect to some old wireless router.
The r8712u driver works just fine in Fedora 24 and it seems to be substantially unchanged.
I ran 'modinfo r8712u' on both F24 and F25 and diff'd them. The only differences are in the filesystem locations and labelling. There was no other substantial difference.
I've monitored dmesg while plugging the DLink adapter in and it's apparent that 1 - it is detected with proper vendor and product IDs. 2 - the r8712u module is selected and registered. 3 - the correct firmware is loaded from rtlwifi/rtl8712u.bin 4 - an endless stream of messages ensues: [ 262.524809] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready and, of course, the new interface never becomes available to NetworkManager.
What's gone wrong? Why does the same driver work in Fedora 24 but not in Fedora 25? How do I regain operability?
Disable IPV6 in NM? The message you're getting is IPV6-specific and that may be causing NM issues (it keeps waiting on a valid IPV6 address to become available, never does, and NM keeps waiting).
That's just a guess. ---------------------------------------------------------------------- - Rick Stevens, Systems Engineer, AllDigital ricks@alldigital.com - - AIM/Skype: therps2 ICQ: 226437340 Yahoo: origrps2 - - - - When in doubt, mumble. - ----------------------------------------------------------------------
On 02/07/17 16:09, Rick Stevens wrote:
On 02/07/2017 12:54 PM, David A. De Graaf wrote:
The r8712u driver from the staging area has stopped working in Fedora 25.
I've monitored dmesg while plugging the DLink adapter in and it's apparent that 1 - it is detected with proper vendor and product IDs. 2 - the r8712u module is selected and registered. 3 - the correct firmware is loaded from rtlwifi/rtl8712u.bin 4 - an endless stream of messages ensues: [ 262.524809] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready and, of course, the new interface never becomes available to NetworkManager.
What's gone wrong? Why does the same driver work in Fedora 24 but not in Fedora 25? How do I regain operability?
Disable IPV6 in NM? The message you're getting is IPV6-specific and that may be causing NM issues (it keeps waiting on a valid IPV6 address to become available, never does, and NM keeps waiting).
That's just a guess.
- Rick Stevens, Systems Engineer, AllDigital ricks@alldigital.com -
- AIM/Skype: therps2 ICQ: 226437340 Yahoo: origrps2 -
-
When in doubt, mumble. -
Thank you, Rick Stevens, for your very rational guess.
However, I'm at a loss how exactly to disable ipv6 in NetworkManager because NetworkManager has not yet recognized the new interface for the freshly plugged in DLink USB adapter. That is, there's no ifcfg-* file in /etc/sysconfig/network-scripts. In fact, there is no file anywhere in that directory tree that contains the MAC address of the adapter. So it appears that NetworkManager doesn't come into the picture until AFTER <whatever> determines that the 'link is ready'.
In my retained /f24 filesystem there are several ifcfg-* files that do contain that MAC address and had been used while Fedora 24 was active. I copied one to the F25 filesystem. That was insufficient for NetworkManager to see it and allow editing it. However, after restarting NetworkManager, that new Network Connection became listed as editable when I right-clicked on the nm-applet icon.
First, I used it unaltered - because it had worked perfectly in F24 - eg, I simply plugged in the DLink USB adapter and watched 'dmesg -w'. Second, I clicked on nm-applet and graphically edited that Network Connection to set ipv6 settings to "Ignore". Third, I manually edited the original ifcfg file to disable all the ipv6 settings.
The output of dmesg was the same for all three cases. There was NO CHANGE. To be specific and complete, here's the dmesg output:
[82189.094547] usb 1-4: new high-speed USB device number 7 using xhci_hcd [82189.265676] usb 1-4: New USB device found, idVendor=07d1, idProduct=3300 [82189.265686] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [82189.265692] usb 1-4: Product: 11n Adapter [82189.265697] usb 1-4: Manufacturer: Manufacturer Realtek [82189.265702] usb 1-4: SerialNumber: 00e04c000001 [82189.269827] r8712u: register rtl8712_netdev_ops to netdev_ops [82189.269839] usb 1-4: r8712u: USB_SPEED_HIGH with 4 endpoints [82189.271387] usb 1-4: r8712u: Boot from EFUSE: Autoload OK [82189.635092] usb 1-4: r8712u: CustomerID = 0x0006 [82189.635100] usb 1-4: r8712u: MAC Address from efuse = 28:10:7b:c2:09:ae [82189.635105] usb 1-4: r8712u: Loading firmware from "rtlwifi/rtl8712u.bin" [82189.686494] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready [82190.390956] r8712u 1-4:1.0 wlan1: 1 RCR=0x153f00e [82190.391691] r8712u 1-4:1.0 wlan1: 2 RCR=0x553f00e [82191.603127] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready [82193.122927] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready [82193.182252] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready [82194.707205] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready [82196.235123] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready ....
So, the IPv6 error messages recur endlessly and the link remains not ready.
I have two other computers with slightly unusual USB wireless adapters that are also behaving badly with Fedora 25. I will report these observations when I've collected convincing data.
I cannot help but think there's a significant kernel bug... Anyone with a plug-in USB wireless adapter should closely monitor its behaviour.
On 07.02.2017 21:54, David A. De Graaf wrote:
The r8712u driver from the staging area has stopped working in Fedora 25. This driver supports (among others) my emergency USB DLink DWA-130 adapter that I use when the laptop's built in wireless (Qualcomm Atheros QCA9377 802.11ac) is "too advanced" to connect to some old wireless router.
The r8712u driver works just fine in Fedora 24 and it seems to be substantially unchanged.
I ran 'modinfo r8712u' on both F24 and F25 and diff'd them. The only differences are in the filesystem locations and labelling. There was no other substantial difference.
I've monitored dmesg while plugging the DLink adapter in and it's apparent that 1 - it is detected with proper vendor and product IDs. 2 - the r8712u module is selected and registered. 3 - the correct firmware is loaded from rtlwifi/rtl8712u.bin 4 - an endless stream of messages ensues: [ 262.524809] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready and, of course, the new interface never becomes available to NetworkManager.
What's gone wrong? Why does the same driver work in Fedora 24 but not in Fedora 25? How do I regain operability?
You can try the following two options:
- Disable Pre-association / Scanning random MAC address;
/etc/NetworkManager/NetworkManager.conf ... [device] # default: # wifi.scan-rand-mac-address=yes # See 'man 5 NetworkManager.conf' # https://blogs.gnome.org/thaller/2016/08/26/mac-address-spoofing-in-networkma... # Disable Pre-association / Scanning random MAC address for r8712u WEXT driver, # it breaks wpa_supplicant wifi.scan-rand-mac-address=no
OR
- Switch to one of the modern version of the driver, r92su is easier to set up because it uses the same firmware as r8712u;
$ git clone https://github.com/chunkeey/rtl8192su.git $ cd rtl8192su/ $ make -f Makefile.r92su $ su
# echo "blacklist r8712u" >> /etc/modprobe.d/wifi-blacklist.conf # systemctl stop NetworkManager.service # modprobe -rv r8712u
# cp r92su/r92su.ko /lib/modules/$(uname -r)/updates # depmod # modinfo r92su # modprobe -v r92su # systemctl start NetworkManager.service # exit
$ nm-connection-editor
Tested with: kernel-4.9.8-1001.fc24.x86_64 NetworkManager-1.7.1-0.4.20170207gitca5f915.fc24.x86_64 nm-connection-editor-1.4.5-0.4.20170207gitd898ecf.fc24.x86_64 iperf-2.0.8-6.fc24.x86_64
= Throughput Test =
RTL8188SU 802.11n WLAN Adapter ≈≈≈≈≈≈≈≈≈≈≈≈ AP(Wi-Fi == bridge == 100Mbit switch) ============ SERVER
Server mode: $ iperf -s -i 1 ------------------------------------------------------------ Server listening on TCP port 5001 TCP window size: 85.3 KByte (default) ------------------------------------------------------------ [ 4] local <SERVER> port 5001 connected with <CLIENT> port 47460 [ ID] Interval Transfer Bandwidth [ 4] 0.0- 1.0 sec 9.10 MBytes 76.3 Mbits/sec [ 4] 1.0- 2.0 sec 10.4 MBytes 87.0 Mbits/sec [ 4] 2.0- 3.0 sec 10.3 MBytes 86.4 Mbits/sec [ 4] 3.0- 4.0 sec 9.78 MBytes 82.0 Mbits/sec [ 4] 4.0- 5.0 sec 9.78 MBytes 82.0 Mbits/sec [ 4] 5.0- 6.0 sec 9.87 MBytes 82.8 Mbits/sec [ 4] 6.0- 7.0 sec 9.74 MBytes 81.7 Mbits/sec [ 4] 7.0- 8.0 sec 9.85 MBytes 82.6 Mbits/sec [ 4] 8.0- 9.0 sec 9.62 MBytes 80.7 Mbits/sec [ 4] 9.0-10.0 sec 9.14 MBytes 76.7 Mbits/sec [ 4] 0.0-10.1 sec 98.4 MBytes 81.7 Mbits/sec
~~~~~~~~~~~~
Client mode: $ iperf -c <SERVER> -i 1 ------------------------------------------------------------ Client connecting to <SERVER>, TCP port 5001 TCP window size: 85.0 KByte (default) ------------------------------------------------------------ [ 3] local <CLIENT> port 47460 connected with <SERVER> port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0- 1.0 sec 9.50 MBytes 79.7 Mbits/sec [ 3] 1.0- 2.0 sec 10.4 MBytes 87.0 Mbits/sec [ 3] 2.0- 3.0 sec 10.4 MBytes 87.0 Mbits/sec [ 3] 3.0- 4.0 sec 9.75 MBytes 81.8 Mbits/sec [ 3] 4.0- 5.0 sec 9.88 MBytes 82.8 Mbits/sec [ 3] 5.0- 6.0 sec 9.75 MBytes 81.8 Mbits/sec [ 3] 6.0- 7.0 sec 9.62 MBytes 80.7 Mbits/sec [ 3] 7.0- 8.0 sec 10.1 MBytes 84.9 Mbits/sec [ 3] 8.0- 9.0 sec 9.38 MBytes 78.6 Mbits/sec [ 3] 9.0-10.0 sec 9.62 MBytes 80.7 Mbits/sec [ 3] 0.0-10.0 sec 98.4 MBytes 82.3 Mbits/sec
On 02/08/17 16:50, poma wrote:
On 07.02.2017 21:54, David A. De Graaf wrote:
The r8712u driver from the staging area has stopped working in Fedora 25.
The r8712u driver works just fine in Fedora 24 and it seems to be substantially unchanged.
You can try the following two options:
- Disable Pre-association / Scanning random MAC address;
OR
- Switch to one of the modern version of the driver, r92su is easier to set up because it uses the same firmware as r8712u;
Thank you, poma. Your answer is spot-on.
Your first suggestion attempts to push me into the swamp of understanding the NetworkManager. As a senior member of this august brotherhood, I do not have enough days left to undertake this challenge. I'm afraid I cannot and will not attempt to make sense of the "logic" represented there.
Your second suggestion - build and use r92su instead of r8712u - works perfectly. I measured bandwidth of only 28.4 Mbit/sec compared with your ~82 Mbit/sec, but I'll leave that curiosity for another day.
This raises a number of ancillary questions:
1 - How did you discover the existence of this newer r92su driver, and where to find it?
2 - Are there others, hidden from mere mortals, for other devices?
3 - Was Fedora 25 knowingly released with broken drivers when better ones are available for those privileged to be aware of them?
4 - Why, exactly, has the r8712u driver become broken? It has worked perfectly through F24.
5 - Was any of this announced? Will it be?
poma, thank you again for your helpful information. I enjoy reading your comments. They're always helpful, although sometimes so concise as to be incomprehensible. This one was clear and complete.
On 09.02.2017 21:02, David A. De Graaf wrote:
On 02/08/17 16:50, poma wrote:
On 07.02.2017 21:54, David A. De Graaf wrote:
The r8712u driver from the staging area has stopped working in Fedora 25.
The r8712u driver works just fine in Fedora 24 and it seems to be substantially unchanged.
You can try the following two options:
- Disable Pre-association / Scanning random MAC address;
OR
- Switch to one of the modern version of the driver, r92su is easier to set up because it uses the same firmware as r8712u;
Thank you, poma. Your answer is spot-on.
Your first suggestion attempts to push me into the swamp of understanding the NetworkManager. As a senior member of this august brotherhood, I do not have enough days left to undertake this challenge. I'm afraid I cannot and will not attempt to make sense of the "logic" represented there.
Your second suggestion - build and use r92su instead of r8712u - works perfectly. I measured bandwidth of only 28.4 Mbit/sec compared with your ~82 Mbit/sec, but I'll leave that curiosity for another day.
This raises a number of ancillary questions:
1 - How did you discover the existence of this newer r92su driver, and where to find it?
2 - Are there others, hidden from mere mortals, for other devices?
3 - Was Fedora 25 knowingly released with broken drivers when better ones are available for those privileged to be aware of them?
4 - Why, exactly, has the r8712u driver become broken? It has worked perfectly through F24.
5 - Was any of this announced? Will it be?
poma, thank you again for your helpful information. I enjoy reading your comments. They're always helpful, although sometimes so concise as to be incomprehensible. This one was clear and complete.
No hay problema señor.
These days it seems that the entire Internet is at a party at https://github.com, howsoever I guess you can ask the Fedora custodians for the Fedora part.
Here are a few references about Realtek RTL8712 USB device support: - Realtek 802.11n drivers http://linuxwireless.org/en/users/Drivers/rtl819x https://wireless.wiki.kernel.org/en/users/drivers/rtl819x - "staging: refresh TODO for rtl8712" https://git.kernel.org/cgit/linux/kernel/git/gregkh/staging.git/commit/drive... - "Re: r92su: status and will it be merged anytime soon?" https://marc.info/?l=linux-wireless&m=138358275410975 - Jes Sorensen _at_ redhat.com talk about possible support for Realtek RTL8712 USB device by RTL8XXXu USB mac80211 Wireless LAN Driver https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1193475.html "For the rtl8712 device, rtl8192su?, then potentially that could be added to rtl8xxxu as well, but it's not a top priority on my list right now."
More on the topic you can inquire at: http://vger.kernel.org/vger-lists.html#linux-wireless
BTW, do you need directions on how to manage r92su.ko with the multitude of kernels?
On 02/10/17 11:59, poma wrote:
These days it seems that the entire Internet is at a party at https://github.com, howsoever I guess you can ask the Fedora custodians for the Fedora part.
Here are a few references about Realtek RTL8712 USB device support:
- Realtek 802.11n drivers
http://linuxwireless.org/en/users/Drivers/rtl819x https://wireless.wiki.kernel.org/en/users/drivers/rtl819x
- "staging: refresh TODO for rtl8712"
https://git.kernel.org/cgit/linux/kernel/git/gregkh/staging.git/commit/drive...
- "Re: r92su: status and will it be merged anytime soon?"
https://marc.info/?l=linux-wireless&m=138358275410975
- Jes Sorensen _at_ redhat.com talk about possible support for Realtek RTL8712 USB device by RTL8XXXu USB mac80211 Wireless LAN Driver
https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1193475.html "For the rtl8712 device, rtl8192su?, then potentially that could be added to rtl8xxxu as well, but it's not a top priority on my list right now."
More on the topic you can inquire at: http://vger.kernel.org/vger-lists.html#linux-wireless
BTW, do you need directions on how to manage r92su.ko with the multitude of kernels?
Wow, that's a lot of info to digest.
Thanks to these leads, I've also discovered a new driver for my dual antenna Rosewill USB wireless adapters, listed by lsusb as Bus 001 Device 002: ID 0bda:8178 Realtek Semiconductor Corp. RTL8192CU 802.11n WLAN Adapter
Before F25 I had obtained an updated rtl8192cu driver via git clone https://github.com/pvaret/rtl8192cu-fixes.git and built it following instructions in its README file.
However, this driver also no longer works in Fedora 25 and by default the unimproved rtl8192cu version in the staging area is used.
Reading https://wireless.wiki.kernel.org/en/users/drivers/rtl819x I discovered that rtl8192cu is being replaced by rtl8xxxu. Moreover, rtl8xxxu is included with F25, but isn't used in this case, for reasons unknown.
Simply blacklisting rtl8192cu causes rtl8xxxu to be used instead. The iperf3 measured bandwidth increased dramatically, from a ragged 18. Mb/s to a solid 44. Mb/s.
Apparently the wireless world is changing too fast even for Fedora to keep up.
On 10.02.2017 22:44, David De Graaf wrote:
On 02/10/17 11:59, poma wrote:
These days it seems that the entire Internet is at a party at https://github.com, howsoever I guess you can ask the Fedora custodians for the Fedora part.
Here are a few references about Realtek RTL8712 USB device support:
- Realtek 802.11n drivers
http://linuxwireless.org/en/users/Drivers/rtl819x https://wireless.wiki.kernel.org/en/users/drivers/rtl819x
- "staging: refresh TODO for rtl8712"
https://git.kernel.org/cgit/linux/kernel/git/gregkh/staging.git/commit/drive...
- "Re: r92su: status and will it be merged anytime soon?"
https://marc.info/?l=linux-wireless&m=138358275410975
- Jes Sorensen _at_ redhat.com talk about possible support for Realtek RTL8712 USB device by RTL8XXXu USB mac80211 Wireless LAN Driver
https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1193475.html "For the rtl8712 device, rtl8192su?, then potentially that could be added to rtl8xxxu as well, but it's not a top priority on my list right now."
More on the topic you can inquire at: http://vger.kernel.org/vger-lists.html#linux-wireless
BTW, do you need directions on how to manage r92su.ko with the multitude of kernels?
Wow, that's a lot of info to digest.
Thanks to these leads, I've also discovered a new driver for my dual antenna Rosewill USB wireless adapters, listed by lsusb as Bus 001 Device 002: ID 0bda:8178 Realtek Semiconductor Corp. RTL8192CU 802.11n WLAN Adapter
Before F25 I had obtained an updated rtl8192cu driver via git clone https://github.com/pvaret/rtl8192cu-fixes.git and built it following instructions in its README file.
However, this driver also no longer works in Fedora 25 and by default the unimproved rtl8192cu version in the staging area is used.
Reading https://wireless.wiki.kernel.org/en/users/drivers/rtl819x I discovered that rtl8192cu is being replaced by rtl8xxxu. Moreover, rtl8xxxu is included with F25, but isn't used in this case, for reasons unknown.
Simply blacklisting rtl8192cu causes rtl8xxxu to be used instead. The iperf3 measured bandwidth increased dramatically, from a ragged 18. Mb/s to a solid 44. Mb/s.
Apparently the wireless world is changing too fast even for Fedora to keep up.
Most of assigned drivers can also be found in this way: $ grep -i '<vendor ID>.*<product ID>' /lib/modules/$(uname -r)/modules.alias
that is, if the device is presented to the system with ID 0bda:8178 $ grep -i '0bda.*8178' /lib/modules/$(uname -r)/modules.alias alias usb:v0BDAp8178d*dc*dsc*dp*ic*isc*ip*in* rtl8192cu alias usb:v0BDAp8178d*dc*dsc*dp*icFFiscFFipFFin* rtl8xxxu
On 02/11/17 06:53, poma wrote:
On 10.02.2017 22:44, David De Graaf wrote:
On 02/10/17 11:59, poma wrote:
These days it seems that the entire Internet is at a party at https://github.com, howsoever I guess you can ask the Fedora custodians for the Fedora part.
Bugzillas filed: Bug 1421383 - The r8712u driver from staging ibroken in F25 (edit)
Bug 1421385 - rtl8192cu driver gives poor performance; rtl8xxxu is much better
On 11.02.2017 23:26, David A. De Graaf wrote:
On 02/11/17 06:53, poma wrote:
On 10.02.2017 22:44, David De Graaf wrote:
On 02/10/17 11:59, poma wrote:
These days it seems that the entire Internet is at a party at https://github.com, howsoever I guess you can ask the Fedora custodians for the Fedora part.
Bugzillas filed: Bug 1421383 - The r8712u driver from staging ibroken in F25 (edit)
Bug 1421385 - rtl8192cu driver gives poor performance; rtl8xxxu is much better
I put a few bits there ;)
WARNING: FOR TESTING PURPOSES ONLY!
For this, particular case, a workaround is created in the NetworkManager. "device: add spec "driver:" to match devices" https://cgit.freedesktop.org/NetworkManager/NetworkManager/commit/?id=b869d9...
I've tested with the device driven by r8712u.ko and it works OK.
Test build can be found here: http://goo.gl/Gm4ffO NetworkManager-1.7.x/
A summarized explanation is in: /etc/NetworkManager/NetworkManager.conf
Be aware, this is significant upgrade even for testing; Connection profiles should be reconfigured; KEYFILE - system settings plugin is used, so connection profiles are in: /etc/NetworkManager/system-connections/ etc.