07d1:3a09 D-Link DWA-160 WARNING: at /build/buildd/linux-3.2.0/drivers/net/wireless/ath/carl9170/tx.c:354 carl9170_tx_shift_bm.isra.20+0x109/0x120 [carl9170]()

Bug #1022016 reported by Artur Ruta
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Expired
Medium
Unassigned

Bug Description

D-Link DWA-160 usb wifi dongle revision A2 wich includes the atheros AR9170+AR9104 hungs often

syslog at the time of error follows
Jun 23 09:39:10 Canigo kernel: [ 1476.376752] ieee80211 phy0: channel change: 5220 -> 5240 failed (3).
Jun 23 09:42:35 Canigo kernel: [ 1681.219294] ------------[ cut here ]------------
Jun 23 09:42:35 Canigo kernel: [ 1681.219323] WARNING: at /build/buildd/linux-3.2.0/drivers/net/wireless/ath/carl9170/tx.c:354 carl9170_tx_shift_bm.isra.20+0x109/0x120 [carl9170]()
Jun 23 09:42:35 Canigo kernel: [ 1681.219332] Hardware name: AMILO Pro Edition V3505
Jun 23 09:42:35 Canigo kernel: [ 1681.219338] Modules linked in: arc4 parport_pc ppdev rfcomm bnep joydev carl9170 pcmcia mac80211 ath usbhid hid snd_hda_codec_si3054 snd_hda_codec_realtek i915 snd_hda_intel cfg80211 snd_hda_codec snd_hwdep snd_pcm snd_seq_midi snd_rawmidi snd_seq_midi_event drm_kms_helper snd_seq drm snd_timer snd_seq_device yenta_socket btusb psmouse pcmcia_rsrc serio_raw bluetooth snd pcmcia_core soundcore snd_page_alloc i2c_algo_bit video mac_hid lp parport sdhci_pci sdhci sky2
Jun 23 09:42:35 Canigo kernel: [ 1681.219455] Pid: 0, comm: swapper/0 Not tainted 3.2.0-25-generic-pae #40-Ubuntu
Jun 23 09:42:35 Canigo kernel: [ 1681.219462] Call Trace:
Jun 23 09:42:35 Canigo kernel: [ 1681.219478] [<c1592f2e>] ? printk+0x2d/0x2f
Jun 23 09:42:35 Canigo kernel: [ 1681.219494] [<c105a5e2>] warn_slowpath_common+0x72/0xa0
Jun 23 09:42:35 Canigo kernel: [ 1681.219510] [<f87f6959>] ? carl9170_tx_shift_bm.isra.20+0x109/0x120 [carl9170]
Jun 23 09:42:35 Canigo kernel: [ 1681.219525] [<f87f6959>] ? carl9170_tx_shift_bm.isra.20+0x109/0x120 [carl9170]
Jun 23 09:42:35 Canigo kernel: [ 1681.219536] [<c105a632>] warn_slowpath_null+0x22/0x30
Jun 23 09:42:35 Canigo kernel: [ 1681.219551] [<f87f6959>] carl9170_tx_shift_bm.isra.20+0x109/0x120 [carl9170]
Jun 23 09:42:35 Canigo kernel: [ 1681.219595] [<f8893e79>] ? ieee80211_find_sta+0x19/0x30 [mac80211]
Jun 23 09:42:35 Canigo kernel: [ 1681.219611] [<f87f6a0f>] carl9170_tx_status_process_ampdu+0x9f/0x130 [carl9170]
Jun 23 09:42:35 Canigo kernel: [ 1681.219627] [<f87f6b62>] carl9170_tx_status+0x82/0xa0 [carl9170]
Jun 23 09:42:35 Canigo kernel: [ 1681.219643] [<f87f70bf>] __carl9170_tx_process_status+0xcf/0x130 [carl9170]
Jun 23 09:42:35 Canigo kernel: [ 1681.219659] [<f87f72e5>] carl9170_tx_process_status+0x45/0x80 [carl9170]
Jun 23 09:42:35 Canigo kernel: [ 1681.219671] [<c149f45e>] ? kfree_skbmem+0x2e/0x80
Jun 23 09:42:35 Canigo kernel: [ 1681.219686] [<f87f854f>] carl9170_handle_command_response+0x21f/0x320 [carl9170]
Jun 23 09:42:35 Canigo kernel: [ 1681.219702] [<f87f86d7>] __carl9170_rx+0x87/0xd0 [carl9170]
Jun 23 09:42:35 Canigo kernel: [ 1681.219716] [<f87f8797>] carl9170_rx_stream+0x77/0x340 [carl9170]
Jun 23 09:42:35 Canigo kernel: [ 1681.219732] [<f87f8a85>] carl9170_rx+0x25/0x28 [carl9170]
Jun 23 09:42:35 Canigo kernel: [ 1681.219745] [<f87f0305>] carl9170_usb_rx_work+0x85/0x90 [carl9170]
Jun 23 09:42:35 Canigo kernel: [ 1681.219756] [<c1061220>] ? local_bh_enable_ip+0x90/0x90
Jun 23 09:42:35 Canigo kernel: [ 1681.219769] [<f87f032d>] carl9170_usb_tasklet+0x1d/0x30 [carl9170]
Jun...

ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: linux-image-3.2.0-25-generic-pae 3.2.0-25.40
ProcVersionSignature: Ubuntu 3.2.0-25.40-generic-pae 3.2.18
Uname: Linux 3.2.0-25-generic-pae i686
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.24.
ApportVersion: 2.0.1-0ubuntu8
Architecture: i386
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: artur 1579 F.... pulseaudio
Card0.Amixer.info:
 Card hw:0 'Intel'/'HDA Intel at 0xd4540000 irq 43'
   Mixer name : 'Realtek ALC861'
   Components : 'HDA:10ec0861,17c01205,00100300 HDA:10573055,10573055,00100700'
   Controls : 9
   Simple ctrls : 6
Date: Sat Jul 7 08:54:54 2012
HibernationDevice: RESUME=UUID=455a5120-3bc7-4986-9fbf-435734cc302f
InstallationMedia: Ubuntu 12.04 LTS "Precise Pangolin" - Release i386 (20120423)
MachineType: FUJITSU SIEMENS AMILO Pro Edition V3505
PccardctlIdent:
 Socket 0:
   no product info available
PccardctlStatus:
 Socket 0:
   no card
ProcEnviron:
 TERM=xterm
 PATH=(custom, no user)
 LANG=ca_ES.UTF-8
 SHELL=/bin/bash
ProcFB: 0 inteldrmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.2.0-25-generic-pae root=UUID=aacceb4e-9a87-4a98-9a1b-8299868861d8 ro quiet splash
RelatedPackageVersions:
 linux-restricted-modules-3.2.0-25-generic-pae N/A
 linux-backports-modules-3.2.0-25-generic-pae N/A
 linux-firmware 1.79
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 04/27/2007
dmi.bios.vendor: Phoenix Technologies LTD
dmi.bios.version: R01-B0G
dmi.board.name: AMILO Pro Edition V3505
dmi.board.vendor: FUJITSU SIEMENS
dmi.board.version: Not Applicable
dmi.chassis.asset.tag: 497DC8A09BE311DBA1508FE2A44F17D0
dmi.chassis.type: 10
dmi.chassis.vendor: FUJITSU SIEMENS
dmi.chassis.version: A2040
dmi.modalias: dmi:bvnPhoenixTechnologiesLTD:bvrR01-B0G:bd04/27/2007:svnFUJITSUSIEMENS:pnAMILOProEditionV3505:pvr20:rvnFUJITSUSIEMENS:rnAMILOProEditionV3505:rvrNotApplicable:cvnFUJITSUSIEMENS:ct10:cvrA2040:
dmi.product.name: AMILO Pro Edition V3505
dmi.product.version: 20
dmi.sys.vendor: FUJITSU SIEMENS

Revision history for this message
Artur Ruta (artur-ruta) wrote :
Revision history for this message
Artur Ruta (artur-ruta) wrote :

likely another occurrence of bug 971728 with just another dongle using the same chipset

Test wit old kernel 3.1.10 showns stable behavior

Brad Figg (brad-figg)
Changed in linux (Ubuntu):
status: New → Confirmed
Revision history for this message
Joseph Salisbury (jsalisbury) wrote :

Would it be possible for you to test the latest upstream kernel? Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Please test the latest v3.5kernel[0] (Not a kernel in the daily directory) and install both the linux-image and linux-image-extra .deb packages.

Once you've tested the upstream kernel, please remove the 'needs-upstream-testing' tag(Only that one tag, please leave the other tags). This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the 'needs-upstream-testing' text.

If this bug is fixed in the mainline kernel, please add the following tag 'kernel-fixed-upstream'.

If the mainline kernel does not fix this bug, please add the tag: 'kernel-bug-exists-upstream'.

If you are unable to test the mainline kernel, for example it will not boot, please add the tag: 'kernel-unable-to-test-upstream'.
Once testing of the upstream kernel is complete, please mark this bug as "Confirmed".

Thanks in advance.

[0] http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.5-rc6-quantal/

Changed in linux (Ubuntu):
importance: Undecided → Medium
status: Confirmed → Incomplete
tags: added: needs-upstream-testing
Revision history for this message
Artur Ruta (artur-ruta) wrote :

tested with kernel 3.5RC6
wifi performance is really slow and hangs quite often even it it recovers after a while (10-15 seconds)
youtube video for example is just impossible. Even webpages that are mostly character based take long to load.
I see no relevant messages in syslog.
So far I stay with kernel 3.5RC6 just in case any further testing is needed.
Tks.

tags: added: kernel-bug-exists-upstream
removed: needs-upstream-testing
penalvch (penalvch)
summary: - D-Link DWA-160 usb wifi dongle hungs often
+ 07d1:3a09 D-Link DWA-160 WARNING: at
+ /build/buildd/linux-3.2.0/drivers/net/wireless/ath/carl9170/tx.c:354
+ carl9170_tx_shift_bm.isra.20+0x109/0x120 [carl9170]()
tags: added: kernel-wifi
Revision history for this message
penalvch (penalvch) wrote :

Artur Ruta, thank you for testing the mainline. Did this problem not occur in a prior version of Ubuntu?

Revision history for this message
Artur Ruta (artur-ruta) wrote :

It does work ok in previos versions.
As a sample, kernel 3.1.10 runs stable and with a much higher performance

Revision history for this message
penalvch (penalvch) wrote :

Artur Ruta, the next step is to perform a kernel bisect from 3.1.10 to 3.2.0-25, in order to identify the offending commit(s). Could you please do this following https://wiki.ubuntu.com/Kernel/KernelBisection ?

tags: added: needs-bisect regression-release
Revision history for this message
Artur Ruta (artur-ruta) wrote :

It took a bit of time.
I realized previos versions were better but not that much stable. 3.1.10 was hunging now and then. So I've been testing several kerners.
The follwing ones proved unreliable:
3.1.5
3.1.10
3.2.0.23
3.2.0.25
3.2.0.26
3.2.0.27
3.5.0
That pretty much covered the whole pangoling range.
Then I went for oneric kernels... anb bingo.
2.6.39 is running like a charm
In order to have it running i had to install an additional package named wireles-crda
This is interesting. According to its description:
This package depends on the CRDA agent for wireless drivers to
determine the regulatory domain channel and power settings.

The CRDA package was already installed by pangolin but this one was missing.
The reason i find this interesting is not only that its related to wireless. In the logs at the time where the wifi dongle gets funny you can see its trying different frequencies and not staying at any given one. This may sheed some ligth on the root of the problem as somehow seems wireless-crda takes care of something like choosing the channel.

So, now we have 2.6.39 running stable even if it requires wireless-crda
Out of curiosity i tried 3.5 again now that wireless-crda is installed. No luck, still hungs.

Some more info. I undertant CRDA is kind of an older driver that was replaced by carl9170.
When running 2.6.39 I looked into the wireless connection properties (right click on the wifi signal icon, then select connection information). There it says that the driver beign used is carl9170, seems we are not running with anything older.

As next step I'm planing on giving a try to kernel 3.0 oneric (not precise pangoling). Will let you know how it does.

Revision history for this message
Artur Ruta (artur-ruta) wrote :

3.0 proved unreliable....
So now what.

One way could be to bisect oneric between 2.6.39 and 3.0 but... we are talking about a first digit change.....
Not only there may be a lot of commits between both but also the very way of handling wifi may have changed.
It would be worth to check with somebody with some understanding on the changes done in that area.

so before undertaking that path i would appreciate your comments on tests so far and whether or not it's worth doing that bisect.

Tks a lot

Revision history for this message
penalvch (penalvch) wrote :

Artur Ruta, thank you for your efforts. The way to maximize the narrowness between problematic kernels, before bisecting commits, is to check against the published kernels in Oneiric https://launchpad.net/ubuntu/oneiric/+source/linux . As per this website, the following kernels are in the 2.6.39 - 3.0 range:
 2.6.39-0.5
2.6.39-1.6
2.6.39-2.7
2.6.39-2.8
2.6.39-3.9
2.6.39-3.10
3.0-0.1

I would test each one until you have the problematic kernel immediately preceding the kernel that works. Then retool for bisecting commits between these two kernels.

Revision history for this message
Artur Ruta (artur-ruta) wrote :

for the record.
Wersion working properly as shown by uname -r was 2.6.39-02063904
starting tests of intermediate builds...

Revision history for this message
Artur Ruta (artur-ruta) wrote :

tried 2.6.39.3.10
runs smoothly....
going for next one

Revision history for this message
Artur Ruta (artur-ruta) wrote :

running 3.0.0.1 and still works ok

Revision history for this message
Artur Ruta (artur-ruta) wrote :

Double checked 3.1.5 just in case...
Not really unstable but hungs now and then even if I'm just 2m from the wifi antena.
Bit uncomfortable because cannot reproduce at will but anyway it seems something went wrong between 3.0.0.1 and 3.1.5
Will try to further narrow down in the coming daysl

Revision history for this message
Artur Ruta (artur-ruta) wrote :

moved wifi router from channel 1 to channel 8 in order to reduce collision with neighbors. Also changed encryption from tkpi to aes.
The rest of wifi devices, some of them running ubuntu have shown improved speed.
This usb dongle... now just fails to connect no mattrer which kernel version i try. It's able to detect that a network is present and even reaches the point of asking for the wifi password.... but never reaches to connect.
This is not completely susprising since the original error messages in this bug pointed to a situation where the adaptor was unable to choose which channel to use and was trying now one, then another.
Anyway enough is enough, it's clerar that support for this device is far from mature in the wifi channel management area.
I rather disvelieve it's something related to the kernel itself. I rather thing it's related to the carl9170 driver but that's just my guess.
In looking at http://linuxwireless.org/en/users/Drivers/carl9170#available_devices i get a rather discouraging picture about this driver stability.
Frustrating as it is I choosen not to invest any more time trying kernels. Some seemed to work better than other but none was working flawlesly. I believe this is more relate to the number of collisons with neighbors thant to actual kernel behavior.
I'm open to try a different approach, a newer cal9170 driver or firmware or something alike if something comes out but for the time being I'll just go and buy some other hardware.
Thanks for your support and advice so far. Pity we didn't get to the bottom of this

Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for linux (Ubuntu) because there has been no activity for 60 days.]

Changed in linux (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.