Activity log for bug #1074157

Date Who What changed Old value New value Message
2012-11-01 21:34:21 Kai Petzke bug added bug
2012-11-01 21:34:21 Kai Petzke attachment added Possible fix for the reported problem. Please see main text about details. It worked for me, but I am not sure, wether the allocation or deallocation size should be changed. https://bugs.launchpad.net/bugs/1074157/+attachment/3421078/+files/ubuntu-kernel-error.diff
2012-11-01 22:01:04 Brad Figg linux (Ubuntu): status New Confirmed
2012-11-01 22:01:06 Brad Figg tags 3g wwan 3g precise wwan
2012-11-02 00:19:57 Ubuntu Foundations Team Bug Bot tags 3g precise wwan 3g patch precise wwan
2012-11-02 00:19:58 Ubuntu Foundations Team Bug Bot bug added subscriber Joseph Salisbury
2012-11-05 16:47:45 Joseph Salisbury tags 3g patch precise wwan 3g kernel-da-key needs-upstream-testing patch precise wwan
2012-11-05 16:47:49 Joseph Salisbury linux (Ubuntu): importance Undecided Medium
2012-11-05 16:47:51 Joseph Salisbury linux (Ubuntu): status Confirmed Incomplete
2012-11-06 22:30:28 Kai Petzke tags 3g kernel-da-key needs-upstream-testing patch precise wwan 3g kernel-da-key kernel-fixed-upstream patch precise wwan
2012-11-06 22:31:23 Kai Petzke linux (Ubuntu): status Incomplete Confirmed
2012-11-07 18:56:42 Herton R. Krzesinski bug added subscriber Herton R. Krzesinski
2012-12-14 13:12:48 Herton R. Krzesinski description When going into suspend-to-RAM or suspend-to-disk, I regularly get error messages like this one in the system log and on the console: [167511.661550] ehci_hcd 0000:00:1d.0: dma_pool_free buffer-128, ffff880036442000/36442000 (bad dma) There is no crash, just this error message. I did some debugging of this thing myself by diving into the kernel sources, and ended up with drivers/usb/class/cdc-wdm.c as the likely source of the problem: Allocation and deallocation of DMA buffer space differ on size. Here is the allocation: desc->inbuf = usb_alloc_coherent(interface_to_usbdev(intf), desc->wMaxCommand, GFP_KERNEL, &desc->response->transfer_dma); and here is the corresponding deallocation (is in the code twize): usb_free_coherent(interface_to_usbdev(desc->intf), desc->bMaxPacketSize0, desc->inbuf, desc->response->transfer_dma); usb_free_coherent(interface_to_usbdev(desc->intf), desc->bMaxPacketSize0, desc->inbuf, desc->response->transfer_dma); Note, that desc->wMaxCommand is used as the size for allocation, and desc->bMaxPacketSize0 is used as the size for deallocation/free. This should both be the same number. To find out, whether this should read desc->bMaxPacketSize0 in all three places, or desc->wMaxCommand in all three places is beyond my scope, though I'd assume, it is desc->bMaxPacketSize0. The device in question is reported by "lsusb" as: Bus 002 Device 024: ID 0bdb:1911 Ericsson Business Mobile Networks BV ProblemType: Bug DistroRelease: Ubuntu 12.04 Package: linux-image-3.2.0-32-generic 3.2.0-32.51 ProcVersionSignature: Ubuntu 3.2.0-32.51-generic 3.2.30 Uname: Linux 3.2.0-32-generic x86_64 AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.24. ApportVersion: 2.0.1-0ubuntu14 Architecture: amd64 ArecordDevices: **** List of CAPTURE Hardware Devices **** card 0: PCH [HDA Intel PCH], device 0: CONEXANT Analog [CONEXANT Analog] Subdevices: 1/1 Subdevice #0: subdevice #0 AudioDevicesInUse: USER PID ACCESS COMMAND /dev/snd/controlC0: kai 1795 F.... pulseaudio Card0.Amixer.info: Card hw:0 'PCH'/'HDA Intel PCH at 0xd1600000 irq 43' Mixer name : 'Intel CougarPoint HDMI' Components : 'HDA:14f1506e,17aa21ed,00100002 HDA:80862805,80860101,00100000' Controls : 14 Simple ctrls : 6 Card29.Amixer.info: Card hw:29 'ThinkPadEC'/'ThinkPad Console Audio Control at EC reg 0x30, fw unknown' Mixer name : 'ThinkPad EC (unknown)' Components : '' Controls : 1 Simple ctrls : 1 Card29.Amixer.values: Simple mixer control 'Console',0 Capabilities: pswitch pswitch-joined penum Playback channels: Mono Mono: Playback [on] Date: Thu Nov 1 22:20:00 2012 HibernationDevice: RESUME=UUID=81618807-56b1-407c-97f3-937b647ae1d3 InstallationMedia: Kubuntu 12.04 LTS "Precise Pangolin" - Release amd64 (20120423) MachineType: LENOVO 3045A64 ProcEnviron: LANGUAGE= TERM=xterm PATH=(custom, user) LANG=de_DE.UTF-8 SHELL=/bin/bash ProcFB: 0 inteldrmfb ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.2.0-32-generic root=UUID=ee9e4d1f-4cd6-40b1-8e46-2ccb3bdca2b6 ro quiet splash vt.handoff=7 RelatedPackageVersions: linux-restricted-modules-3.2.0-32-generic N/A linux-backports-modules-3.2.0-32-generic N/A linux-firmware 1.79.1 SourcePackage: linux StagingDrivers: rts_pstor mei UpgradeStatus: No upgrade log present (probably fresh install) dmi.bios.date: 01/11/2012 dmi.bios.vendor: LENOVO dmi.bios.version: 8QET54WW (1.15 ) dmi.board.asset.tag: Not Available dmi.board.name: 3045A64 dmi.board.vendor: LENOVO dmi.board.version: Not Available dmi.chassis.asset.tag: No Asset Information dmi.chassis.type: 10 dmi.chassis.vendor: LENOVO dmi.chassis.version: Not Available dmi.modalias: dmi:bvnLENOVO:bvr8QET54WW(1.15):bd01/11/2012:svnLENOVO:pn3045A64:pvrThinkPadX121e:rvnLENOVO:rn3045A64:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable: dmi.product.name: 3045A64 dmi.product.version: ThinkPad X121e dmi.sys.vendor: LENOVO SRU Justification Impact: dma badness with cdc-wdm, regression introduced by commit cafbe85 upstream. Fix: Adjust usb_free_coherent calls. Test case: it is reported the problem happens on suspend/resume with cdc-wdm, bad dma messages reported on dmesg -------------------------------------------------------------------------------------- When going into suspend-to-RAM or suspend-to-disk, I regularly get error messages like this one in the system log and on the console:     [167511.661550] ehci_hcd 0000:00:1d.0: dma_pool_free buffer-128, ffff880036442000/36442000 (bad dma) There is no crash, just this error message. I did some debugging of this thing myself by diving into the kernel sources, and ended up with drivers/usb/class/cdc-wdm.c as the likely source of the problem: Allocation and deallocation of DMA buffer space differ on size. Here is the allocation:         desc->inbuf = usb_alloc_coherent(interface_to_usbdev(intf),                                          desc->wMaxCommand,                                          GFP_KERNEL,                                          &desc->response->transfer_dma); and here is the corresponding deallocation (is in the code twize):         usb_free_coherent(interface_to_usbdev(desc->intf),                           desc->bMaxPacketSize0,                         desc->inbuf,                         desc->response->transfer_dma);         usb_free_coherent(interface_to_usbdev(desc->intf),                           desc->bMaxPacketSize0,                           desc->inbuf,                           desc->response->transfer_dma); Note, that desc->wMaxCommand is used as the size for allocation, and desc->bMaxPacketSize0 is used as the size for deallocation/free. This should both be the same number. To find out, whether this should read desc->bMaxPacketSize0 in all three places, or desc->wMaxCommand in all three places is beyond my scope, though I'd assume, it is desc->bMaxPacketSize0. The device in question is reported by "lsusb" as:   Bus 002 Device 024: ID 0bdb:1911 Ericsson Business Mobile Networks BV ProblemType: Bug DistroRelease: Ubuntu 12.04 Package: linux-image-3.2.0-32-generic 3.2.0-32.51 ProcVersionSignature: Ubuntu 3.2.0-32.51-generic 3.2.30 Uname: Linux 3.2.0-32-generic x86_64 AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.24. ApportVersion: 2.0.1-0ubuntu14 Architecture: amd64 ArecordDevices:  **** List of CAPTURE Hardware Devices ****  card 0: PCH [HDA Intel PCH], device 0: CONEXANT Analog [CONEXANT Analog]    Subdevices: 1/1    Subdevice #0: subdevice #0 AudioDevicesInUse:  USER PID ACCESS COMMAND  /dev/snd/controlC0: kai 1795 F.... pulseaudio Card0.Amixer.info:  Card hw:0 'PCH'/'HDA Intel PCH at 0xd1600000 irq 43'    Mixer name : 'Intel CougarPoint HDMI'    Components : 'HDA:14f1506e,17aa21ed,00100002 HDA:80862805,80860101,00100000'    Controls : 14    Simple ctrls : 6 Card29.Amixer.info:  Card hw:29 'ThinkPadEC'/'ThinkPad Console Audio Control at EC reg 0x30, fw unknown'    Mixer name : 'ThinkPad EC (unknown)'    Components : ''    Controls : 1    Simple ctrls : 1 Card29.Amixer.values:  Simple mixer control 'Console',0    Capabilities: pswitch pswitch-joined penum    Playback channels: Mono    Mono: Playback [on] Date: Thu Nov 1 22:20:00 2012 HibernationDevice: RESUME=UUID=81618807-56b1-407c-97f3-937b647ae1d3 InstallationMedia: Kubuntu 12.04 LTS "Precise Pangolin" - Release amd64 (20120423) MachineType: LENOVO 3045A64 ProcEnviron:  LANGUAGE=  TERM=xterm  PATH=(custom, user)  LANG=de_DE.UTF-8  SHELL=/bin/bash ProcFB: 0 inteldrmfb ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.2.0-32-generic root=UUID=ee9e4d1f-4cd6-40b1-8e46-2ccb3bdca2b6 ro quiet splash vt.handoff=7 RelatedPackageVersions:  linux-restricted-modules-3.2.0-32-generic N/A  linux-backports-modules-3.2.0-32-generic N/A  linux-firmware 1.79.1 SourcePackage: linux StagingDrivers: rts_pstor mei UpgradeStatus: No upgrade log present (probably fresh install) dmi.bios.date: 01/11/2012 dmi.bios.vendor: LENOVO dmi.bios.version: 8QET54WW (1.15 ) dmi.board.asset.tag: Not Available dmi.board.name: 3045A64 dmi.board.vendor: LENOVO dmi.board.version: Not Available dmi.chassis.asset.tag: No Asset Information dmi.chassis.type: 10 dmi.chassis.vendor: LENOVO dmi.chassis.version: Not Available dmi.modalias: dmi:bvnLENOVO:bvr8QET54WW(1.15):bd01/11/2012:svnLENOVO:pn3045A64:pvrThinkPadX121e:rvnLENOVO:rn3045A64:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable: dmi.product.name: 3045A64 dmi.product.version: ThinkPad X121e dmi.sys.vendor: LENOVO
2012-12-14 14:12:47 Tim Gardner nominated for series Ubuntu Oneiric
2012-12-14 14:12:47 Tim Gardner bug task added linux (Ubuntu Oneiric)
2012-12-14 14:12:47 Tim Gardner nominated for series Ubuntu Precise
2012-12-14 14:12:47 Tim Gardner bug task added linux (Ubuntu Precise)
2012-12-14 14:12:47 Tim Gardner nominated for series Ubuntu Quantal
2012-12-14 14:12:47 Tim Gardner bug task added linux (Ubuntu Quantal)
2012-12-14 14:12:47 Tim Gardner nominated for series Ubuntu Raring
2012-12-14 14:12:47 Tim Gardner bug task added linux (Ubuntu Raring)
2012-12-14 14:13:10 Tim Gardner linux (Ubuntu Oneiric): status New Fix Committed
2012-12-14 14:13:10 Tim Gardner linux (Ubuntu Oneiric): assignee Herton R. Krzesinski (herton)
2012-12-14 14:13:33 Tim Gardner linux (Ubuntu Oneiric): assignee Herton R. Krzesinski (herton) Ming Lei (tom-leiming)
2012-12-14 14:13:53 Tim Gardner linux (Ubuntu Precise): status New Fix Committed
2012-12-14 14:13:53 Tim Gardner linux (Ubuntu Precise): assignee Ming Lei (tom-leiming)
2012-12-14 14:14:06 Tim Gardner linux (Ubuntu Quantal): status New Fix Released
2012-12-14 14:14:18 Tim Gardner linux (Ubuntu Raring): status Confirmed Fix Released
2012-12-17 09:40:40 Anthony Wong bug added subscriber Canonical Hardware Enablement Team
2012-12-17 09:40:44 Anthony Wong tags 3g kernel-da-key kernel-fixed-upstream patch precise wwan 3g blocks-hwcert-enablement kernel-da-key kernel-fixed-upstream patch precise wwan
2013-01-07 11:00:16 Luis Henriques tags 3g blocks-hwcert-enablement kernel-da-key kernel-fixed-upstream patch precise wwan 3g blocks-hwcert-enablement kernel-da-key kernel-fixed-upstream patch precise verification-needed-precise wwan
2013-01-07 11:01:03 Luis Henriques tags 3g blocks-hwcert-enablement kernel-da-key kernel-fixed-upstream patch precise verification-needed-precise wwan 3g blocks-hwcert-enablement kernel-da-key kernel-fixed-upstream patch precise verification-needed-oneiric verification-needed-precise wwan
2013-01-08 12:05:52 Luis Henriques tags 3g blocks-hwcert-enablement kernel-da-key kernel-fixed-upstream patch precise verification-needed-oneiric verification-needed-precise wwan 3g blocks-hwcert-enablement kernel-da-key kernel-fixed-upstream patch precise verification-done-oneiric verification-done-precise wwan
2013-01-15 04:35:42 Launchpad Janitor linux (Ubuntu Oneiric): status Fix Committed Fix Released
2013-01-15 04:35:42 Launchpad Janitor cve linked 2012-4461
2013-01-15 04:35:42 Launchpad Janitor cve linked 2012-4530
2013-01-17 21:18:11 Launchpad Janitor linux (Ubuntu Precise): status Fix Committed Fix Released
2013-01-17 21:18:11 Launchpad Janitor cve linked 2012-5532
2013-05-07 17:21:21 Launchpad Janitor branch linked lp:ubuntu/lucid-security/linux-lts-backport-oneiric
2013-05-08 02:31:25 Launchpad Janitor branch linked lp:ubuntu/oneiric-security/linux-ti-omap4
2014-01-15 15:13:22 Launchpad Janitor branch linked lp:ubuntu/lucid-proposed/linux-lts-backport-oneiric
2014-01-15 21:39:30 Launchpad Janitor branch linked lp:ubuntu/lucid-updates/linux-lts-backport-oneiric