[pvrusb2] New type of oops

JE Geiger james.e.geiger at gmail.com
Wed Apr 21 08:55:29 CDT 2010


kernel 2.6.33.2 tainted with nvidia

I have seen this in the past, but did not catch it to record.  It
appears to indicate a DMA mapping call that maps the stack to DMA,
which I would think is either being misunderstood, or if it is
actually occurring it is a bad idea.  Possibly within the kernel code
itself as part of the kernel objects.  This is just a warning and the
device works fine.

When rc5 of 2.6.34 goes golden, I will recompile and test the newest
to see if these issues go away.




------------[ cut here ]------------
WARNING: at lib/dma-debug.c:866 check_for_stack+0x9b/0xd0()
Hardware name:
ehci_hcd 0000:00:02.1: DMA-API: device driver maps memory fromstack
[addr=f410de57]
Modules linked in: pvrusb2 cx2341x v4l2_common videodev v4l1_compat
tveeprom fuse hwmon_vid hwmon sunrpc nf_conntrack_netbios_ns uinput
snd_intel8x0 snd_ac97_codec ac97_bus snd_seq nvidia(P) snd_seq_device
rt61pci snd_pcm snd_timer crc_itu_t rt2x00pci snd rt2x00lib
i2c_nforce2 i2c_core soundcore forcedeth snd_page_alloc led_class
serio_raw joydev pcspkr eeprom_93cx6 pata_acpi ata_generic pata_amd
[last unloaded: scsi_wait_scan]
Pid: 9359, comm: pvrusb2-context Tainted: P           2.6.33.2 #2
Call Trace:
 [<c0447bb2>] warn_slowpath_common+0x72/0xa0
 [<c063dafb>] ? check_for_stack+0x9b/0xd0
 [<c063dafb>] ? check_for_stack+0x9b/0xd0
 [<c0447c2b>] warn_slowpath_fmt+0x2b/0x30
 [<c063dafb>] check_for_stack+0x9b/0xd0
 [<c063dda0>] debug_dma_map_page+0xd0/0x120
 [<c073fcae>] dma_map_single_attrs.clone.2+0x8e/0xb0
 [<c0740512>] usb_hcd_submit_urb+0x842/0xa30
 [<c044e239>] ? __do_softirq+0x109/0x1d0
 [<c04fb20f>] ? check_object+0x12f/0x1f0
 [<c04f9b55>] ? init_object+0x45/0x80
 [<c04fb7b0>] ? __slab_free+0x1b0/0x260
 [<c0478ea4>] ? lockdep_init_map+0x44/0x120
 [<c0740c24>] usb_submit_urb+0xf4/0x300
 [<c0478ea4>] ? lockdep_init_map+0x44/0x120
 [<c06364f2>] ? __raw_spin_lock_init+0x32/0x60
 [<c0741e22>] usb_start_wait_urb+0x52/0x190
 [<c04fc35a>] ? __slab_alloc+0x4aa/0x4f0
 [<c0742684>] usb_control_msg+0xc4/0x130
 [<c04fc35a>] ? __slab_alloc+0x4aa/0x4f0
 [<f82826ab>] pvr2_hdw_cpureset_assert+0x6b/0xc0 [pvrusb2]
 [<f8286209>] pvr2_upload_firmware1+0xe9/0x380 [pvrusb2]
 [<f828676f>] pvr2_hdw_initialize+0xcf/0x1030 [pvrusb2]
 [<f828b501>] ? pvr2_context_set_notify+0x21/0x100 [pvrusb2]
 [<c089f99d>] ? __mutex_lock_common+0x26d/0x380
 [<f828b501>] ? pvr2_context_set_notify+0x21/0x100 [pvrusb2]
 [<c047b31b>] ? trace_hardirqs_on+0xb/0x10
 [<f828bad0>] ? pvr2_context_thread_func+0x0/0x2c0 [pvrusb2]
 [<c089f5bd>] ? mutex_unlock+0xd/0x10
 [<f828bb4d>] pvr2_context_thread_func+0x7d/0x2c0 [pvrusb2]
 [<c04655d0>] ? autoremove_wake_function+0x0/0x50
 [<f828bad0>] ? pvr2_context_thread_func+0x0/0x2c0 [pvrusb2]
 [<c04651ec>] kthread+0x7c/0x90
 [<c0465170>] ? kthread+0x0/0x90
 [<c0404102>] kernel_thread_helper+0x6/0x10
---[ end trace cecde4df5215f50f ]---

The entire modprobe

Linux video capture interface: v2.00
pvrusb2: Hardware description: WinTV HVR-1950 Model 751xx
usbcore: registered new interface driver pvrusb2
pvrusb2: V4L in-tree version:Hauppauge WinTV-PVR-USB2 MPEG2 Encoder/Tuner
pvrusb2: Debug mask is 31 (0x1f)
usb 1-1: firmware: requesting v4l-pvrusb2-73xxx-01.fw
------------[ cut here ]------------
WARNING: at lib/dma-debug.c:866 check_for_stack+0x9b/0xd0()
Hardware name:
ehci_hcd 0000:00:02.1: DMA-API: device driver maps memory fromstack
[addr=f410de57]
Modules linked in: pvrusb2 cx2341x v4l2_common videodev v4l1_compat
tveeprom fuse hwmon_vid hwmon sunrpc nf_conntrack_netbios_ns uinput
snd_intel8x0 snd_ac97_codec ac97_bus snd_seq nvidia(P) snd_seq_device
rt61pci snd_pcm snd_timer crc_itu_t rt2x00pci snd rt2x00lib
i2c_nforce2 i2c_core soundcore forcedeth snd_page_alloc led_class
serio_raw joydev pcspkr eeprom_93cx6 pata_acpi ata_generic pata_amd
[last unloaded: scsi_wait_scan]
Pid: 9359, comm: pvrusb2-context Tainted: P           2.6.33.2 #2
Call Trace:
 [<c0447bb2>] warn_slowpath_common+0x72/0xa0
 [<c063dafb>] ? check_for_stack+0x9b/0xd0
 [<c063dafb>] ? check_for_stack+0x9b/0xd0
 [<c0447c2b>] warn_slowpath_fmt+0x2b/0x30
 [<c063dafb>] check_for_stack+0x9b/0xd0
 [<c063dda0>] debug_dma_map_page+0xd0/0x120
 [<c073fcae>] dma_map_single_attrs.clone.2+0x8e/0xb0
 [<c0740512>] usb_hcd_submit_urb+0x842/0xa30
 [<c044e239>] ? __do_softirq+0x109/0x1d0
 [<c04fb20f>] ? check_object+0x12f/0x1f0
 [<c04f9b55>] ? init_object+0x45/0x80
 [<c04fb7b0>] ? __slab_free+0x1b0/0x260
 [<c0478ea4>] ? lockdep_init_map+0x44/0x120
 [<c0740c24>] usb_submit_urb+0xf4/0x300
 [<c0478ea4>] ? lockdep_init_map+0x44/0x120
 [<c06364f2>] ? __raw_spin_lock_init+0x32/0x60
 [<c0741e22>] usb_start_wait_urb+0x52/0x190
 [<c04fc35a>] ? __slab_alloc+0x4aa/0x4f0
 [<c0742684>] usb_control_msg+0xc4/0x130
 [<c04fc35a>] ? __slab_alloc+0x4aa/0x4f0
 [<f82826ab>] pvr2_hdw_cpureset_assert+0x6b/0xc0 [pvrusb2]
 [<f8286209>] pvr2_upload_firmware1+0xe9/0x380 [pvrusb2]
 [<f828676f>] pvr2_hdw_initialize+0xcf/0x1030 [pvrusb2]
 [<f828b501>] ? pvr2_context_set_notify+0x21/0x100 [pvrusb2]
 [<c089f99d>] ? __mutex_lock_common+0x26d/0x380
 [<f828b501>] ? pvr2_context_set_notify+0x21/0x100 [pvrusb2]
 [<c047b31b>] ? trace_hardirqs_on+0xb/0x10
 [<f828bad0>] ? pvr2_context_thread_func+0x0/0x2c0 [pvrusb2]
 [<c089f5bd>] ? mutex_unlock+0xd/0x10
 [<f828bb4d>] pvr2_context_thread_func+0x7d/0x2c0 [pvrusb2]
 [<c04655d0>] ? autoremove_wake_function+0x0/0x50
 [<f828bad0>] ? pvr2_context_thread_func+0x0/0x2c0 [pvrusb2]
 [<c04651ec>] kthread+0x7c/0x90
 [<c0465170>] ? kthread+0x0/0x90
 [<c0404102>] kernel_thread_helper+0x6/0x10
---[ end trace cecde4df5215f50f ]---
pvrusb2: Device microcontroller firmware (re)loaded; it should now
reset and reconnect.
usb 1-1: USB disconnect, address 2
pvrusb2: Device being rendered inoperable
usb 1-1: new high speed USB device using ehci_hcd and address 4
usb 1-1: New USB device found, idVendor=2040, idProduct=7501
usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-1: Product: WinTV
usb 1-1: Manufacturer: Hauppauge
usb 1-1: SerialNumber: 7300-00-F0522D8C
pvrusb2: Hardware description: WinTV HVR-1950 Model 751xx
pvrusb2: Binding ir_video to i2c address 0x71.
cx25840 5-0044: cx25843-24 found @ 0x88 (pvrusb2_a)
pvrusb2: Attached sub-driver cx25840
tuner 5-0042: chip found @ 0x84 (pvrusb2_a)
pvrusb2: Attached sub-driver tuner
cx25840 5-0044: firmware: requesting v4l-cx25840.fw
cx25840 5-0044: loaded v4l-cx25840.fw firmware (16382 bytes)
tveeprom 5-00a2: Hauppauge model 75111, rev C3E9, serial# 5385612
tveeprom 5-00a2: MAC address is 00-0D-FE-52-2D-8C
tveeprom 5-00a2: tuner model is Philips 18271_8295 (idx 149, type 54)
tveeprom 5-00a2: TV standards NTSC(M) ATSC/DVB Digital (eeprom 0x88)
tveeprom 5-00a2: audio processor is CX25843 (idx 37)
tveeprom 5-00a2: decoder processor is CX25843 (idx 30)
tveeprom 5-00a2: has radio, has IR receiver, has IR transmitter
pvrusb2: Supported video standard(s) reported available in hardware:
PAL-M/N/Nc;NTSC-M/Mj/Mk;ATSC-8VSB/16VSB
pvrusb2: Mapping standards mask=0x300b700
(PAL-M/N/Nc;NTSC-M/Mj/Mk;ATSC-8VSB/16VSB)
pvrusb2: Setting up 6 unique standard(s)
pvrusb2: Set up standard idx=0 name=PAL-M
pvrusb2: Set up standard idx=1 name=PAL-N
pvrusb2: Set up standard idx=2 name=PAL-Nc
pvrusb2: Set up standard idx=3 name=NTSC-M
pvrusb2: Set up standard idx=4 name=NTSC-Mj
pvrusb2: Set up standard idx=5 name=NTSC-Mk
pvrusb2: Initial video standard (determined by device type): NTSC-M
pvrusb2: Device initialization completed successfully.
pvrusb2: registered device video0 [mpeg]
cx25840 5-0044: firmware: requesting v4l-cx25840.fw
cx25840 5-0044: loaded v4l-cx25840.fw firmware (16382 bytes)
tda829x 5-0042: setting tuner address to 60
tda18271 5-0060: creating new instance
TDA18271HD/C1 detected @ 5-0060
tda829x 5-0042: type set to tda8295+18271
usb 1-1: firmware: requesting v4l-cx2341x-enc.fw


More information about the pvrusb2 mailing list