I'm not sure from which kernel version really, but the problem is with versions 3.8 and 3.9 in Kubuntu 64 bits.
I have the next devices
[code1p85otm1]$ lspci | grep -i ralink
05:02.0 Network controller: Ralink corp. RT2561/RT61 802.11g PCI
$ lsusb | grep -i ralink
Bus 001 Device 003: ID 148f:3070 Ralink Technology, Corp. RT2870/RT3070 Wireless Adapter[/code1p85otm1]
Using rt61pci and rt2800usb modules.
When trying to change the MAC address I get the following messages
[code1p85otm1]# ifconfig wlan0 down; macchanger -r wlan0; ifconfig wlan0 up
Permanent MAC: xx:xx:xx:xx:xx:xx
Current MAC: xx:xx:xx:xx:xx:xx
ERROR: Can't change MAC: interface up or not permission: Invalid argument[/code1p85otm1]
[code1p85otm1]# ifconfig wlan0 down; ifconfig wlan0 hw ether 00:11:22:33:44:55; ifconfig wlan0 up
SIOCSIFHWADDR: Invalid argument[/code1p85otm1]
I use the same commands in the same system with Kernel 3.2, and everything works fine.
Do you know what has changed in the kernel, which makes it impossible to change the MAC address?
I have seen versions of the drivers with "modinfo" and versions seem to be the same in all kernels (v2.3.0)
Thank you very much
I'm also affected by this problem on a raspberry pi running 3.9.7.
$ lsusb | grep -i wireless
Bus 001 Device 006: ID 13d3:3247 IMC Networks 802.11 n/g/b Wireless LAN Adapter
The kernel is the linux-raspberrypi-latest from archlinuxarm's core repository.
It work's with the linux-raspberrypi package, which is 3.6.11.
That's only slightly more precise than the 3.2 you mentioned, but still.
Are there any theories on the developers side, or should I simply try to find the offending commit to https//git.kernel.org/cgit/linux/kerne ... ess/rt2x00
Are there better ways to debug this?
Hope I'll be able to help resolve this issue.