This section helps users report bugs in the right place.
- Reporting bugs
- Relevant software
- Kernel panics / Kernel hangs
- Other issues
- Getting the latest and greatest Linux wireless drivers
- Identifying the bug
- Reporting bugs in NetworkManager
- Reporting bugs in wpa_supplicant
- Reporting bugs in drivers or mac80211
Wireless drivers are just one component of the software stack necessary for wireless devices to function. There are also userspace components, namely NetworkManager, wpa_supplicant, Dbus, wireless-tools, and iw.
Kernel panics / Kernel hangs
Kernel panics are kernel bugs, and should be reported immediately. Kernel hangs can be kernel bugs and should be reported as well. Keep in mind you must first ensure your distribution is running the latest stable kernel which matches upstream. You can check that by looking at the v2.6 kernel archives or if you are running the actual latest stable kernel simply by looking at http://kernel.org (another option is the Linux kernel.org finger banner). If you are say on 126.96.36.199 and see there is a 188.8.131.52 you should firs try out 184.108.40.206.
Non-kernel panic or non-hang issues still need to be reported but to better assist Linux wireless developers you are encouraged to try the latest wireless drivers first so the issues can be fixed first upstream and then the respective backport fixes can be propagated down to the older kernel stable series. You have a few options in order to test the latest and greatest wireless drivers, these are covered below.
Getting the latest and greatest Linux wireless drivers
Why not Linus' tree? – because John pulls from him
We elaborate on these below.
Using John's wireless-testing git tree
John Linville is the Linux wireless maintainer and as such his tree is used to push patches upstream to be queued for the next kernel release. Patches pushed into his tree eventually make it to David Miller's tree for the next stable kernel. David then pushes his changes down to Linus and Linus blesses a new release. For more elaborate details you can refer the Linux wireless developer documentation. What you need to know John's tree is the point of entry for any wireless patch.
To use John's tree directly you are expected to know how to configure your kernel, compile it, and load it. If you're up for that you can use our git-guide for reference on how to use git and then clone this tree:
You can use compat-wireless to get the latest and greatest drivers as well. This basically takes what John has and applies some compatibility patches and gets you going with the latest and greatest on older kernels. You are expected to be able to run 'make' and 'sudo make install' and 'sudo reboot'. For further details you should read the compat-wireless documentation.
Use Stephen Rothwell's linux-next git tree
This is similar to using John's tree but with the added benefit of getting not only the latest and greatest Linux wireless drivers but also the latest *everything* (technically all the -next git trees). You may want this if you have issues with other devices on your system. Read the git-guide and then check out his tree (gitweb):
== Why are you not recommending Linus tree==
John's tree is based on Linus' tree so by testing his tree you test Linus' tree already and you get the latest Linux wireless drivers as well. This is after all the Linux wireless page.
Identifying the bug
In order to help developers help you better you can do some work on your part to try to narrow bugs down better. If you are unsure about where the bug lies you can start by turning off NetworkManager and its attached wpa_supplicant and then try running wpa_supplicant yourself with your own configuration file. NetworkManager keeps its configuration internally and uses Dbus to relay to wpa_supplicant its configuration settings. To try to reproduce a configuration file similar to the one NetworkManager uses you can check the log file used by NetworkManager (/var/log/messages in most some systems) to review the settings used. If you can still reproduce the issue then try using wireless-tools or iw to connect manually. You will only be able to use wireless-tools or iw to connect manually if your wireless connection *does not require* WPA or WPA2. For connections with WPA or WPA2 you *need* to use wpa_supplicant.
To stop NetworkManager use:
# Red Hat based systems sudo /sbin/service NetworkMananger stop # Debian based systems (Ubuntu is one) sudo /etc/init.d/NetworkManager stop sudo killall -TERM wpa_supplicant
Reporting bugs in NetworkManager
Reporting bugs in wpa_supplicant
You can report bugs in the hostap mailing lists.
Reporting bugs in drivers or mac80211
You should report them on the Linux wireless mailing list.