Please note: This project is no longer active. The website is kept online for historic purposes only.
If you´re looking for a Linux driver for your Atheros WLAN device, you should continue here .

Ticket #1864 (closed defect: fixed)

Opened 11 years ago

Last modified 11 years ago

ath_rate_amrr and ath_rate_onoe use conflicting sysctl paths

Reported by: anonymous Assigned to: proski
Priority: minor Milestone: version 0.9.5
Component: madwifi: other Version: v0.9.4
Keywords: Cc:
Patch is attached: 0 Pending:


While insert modules using this script:

modprobe wlan_tkip
modprobe wlan_acl
modprobe wlan_ccmp
modprobe wlan_wep
modprobe wlan_xauth
modprobe wlan
modprobe ath_pci autocreate=ap
modprobe ath_rate_sample
modprobe ath_rate_onoe
modprobe ath_rate_amrr
modprobe ath_hal
modprobe wlan_scan_sta
modprobe wlan_scan_ap

I have this message in dmesg (error after insert ath_rate_amrr)

wlan: 0.9.4
wlan: mac acl policy registered
ath_hal: module license 'Proprietary' taints kernel.
ath_hal: (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413, RF5413)
ath_pci: 0.9.4
ACPI: PCI Interrupt 0000:06:02.0[A] -> GSI 22 (level, low) -> IRQ 22
ath_rate_sample: 1.2 (0.9.4)
wifi0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
wifi0: 11g rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
wifi0: H/W encryption support: WEP AES AES_CCM TKIP
wifi0: mac 7.8 phy 4.5 radio 5.6
wifi0: Use hw queue 1 for WME_AC_BE traffic
wifi0: Use hw queue 0 for WME_AC_BK traffic
wifi0: Use hw queue 2 for WME_AC_VI traffic
wifi0: Use hw queue 3 for WME_AC_VO traffic
wifi0: Use hw queue 8 for CAB traffic
wifi0: Use hw queue 9 for beacons
wifi0: Atheros 5212: mem=0xc0200000, irq=22
ath_rate_onoe: 1.0 (0.9.4)
ath_rate_amrr: 0.1 (0.9.4)
sysctl table check failed: /dev/ath/rate/interval  Sysctl already exists
Pid: 1507, comm: modprobe Tainted: P #1

Call Trace:
 [<ffffffff8024916d>] set_fail+0x4d/0x70
 [<ffffffff8024946e>] sysctl_check_table+0x2de/0x610
 [<ffffffff80249105>] sysctl_check_lookup+0xc5/0xe0
 [<ffffffff80249484>] sysctl_check_table+0x2f4/0x610
 [<ffffffff80249105>] sysctl_check_lookup+0xc5/0xe0
 [<ffffffff80249484>] sysctl_check_table+0x2f4/0x610
 [<ffffffff80249105>] sysctl_check_lookup+0xc5/0xe0
 [<ffffffff80249484>] sysctl_check_table+0x2f4/0x610
 [<ffffffff80236650>] register_sysctl_table+0x60/0xc0
 [<ffffffff8813303b>] :ath_rate_amrr:init_ath_rate_amrr+0x3b/0x46
 [<ffffffff80252ade>] sys_init_module+0x18e/0x1a00
 [<ffffffff80279f59>] do_mmap_pgoff+0x2e9/0x350
 [<ffffffff8034eae2>] __up_write+0x22/0x130
 [<ffffffff8020bd3e>] system_call+0x7e/0x83

Lspci writes:

06:02.0 Ethernet controller: Atheros Communications, Inc. AR5005G 802.11abg NIC (rev 01)
	Subsystem: AMBIT Microsystem Corp. Unknown device 0418
	Flags: bus master, medium devsel, latency 168, IRQ 22
	Memory at c0200000 (32-bit, non-prefetchable) [size=64K]
	Capabilities: [44] Power Management version 2
	Kernel driver in use: ath_pci
	Kernel modules: ath_pci

May be need use other version?

Change History

(in reply to: ↑ description ) 04/07/08 06:10:24 changed by mrenzmann

  • status changed from new to closed.
  • resolution set to invalid.

Replying to anonymous:

While insert modules using this script:

This is no bug in MadWifi. Rather the script is wrong, since there is no need to modprobe all of the MadWifi modules. Given that the dependency information are correct, modprobe ath_pci is sufficient.

Please direct further questions in this regard to our regular support channels.

06/09/08 06:32:38 changed by proski

  • status changed from closed to reopened.
  • resolution deleted.

I disagree. Duplicate sysctl paths are bad. The kernel doesn't print backtraces for no reason. We need a real solution here. Perhaps distinct paths for all rate control modules. Besides, the rate control modules can be compiled into the kernel.

While at that, the settings should be card specific, so they should be in "wifi0", not in "ath".

06/09/08 06:38:36 changed by proski

  • status changed from reopened to new.
  • owner set to proski.
  • summary changed from Error while inseting modules tu kernel (x86_64) to ath_rate_amrr and ath_rate_onoe use conflicting sysctl paths.

06/12/08 04:13:41 changed by mentor

  • status changed from new to closed.
  • resolution set to fixed.

The names no longer conflict as of r3719. Closing as fixed.

Further to the discussion about card-specific, the settings in the rate modules are currently global. Also, given the acknowledged problems with onoe and amrr, perhaps the right solution is to remove them from the codebase entirely?

06/12/08 04:13:57 changed by mentor

  • milestone set to version 0.9.5.

06/12/08 04:49:10 changed by proski

I confirm that the sysctl conflict is fixed. I agree that further changes are not necessary, considering that both algorithms are not used much. As for the removal, it should be discussed in the mailing list with sufficient details.