works in 2.6.30 in 2.6.31rc5: [ 421.836106] usb 1-2: new high speed USB device using ehci_hcd and address 4 [ 421.969067] usb 1-2: configuration #1 chosen from 1 choice [ 422.056455] dib0700: loaded with support for 9 different device-types [ 422.056705] dvb-usb: found a 'Gigabyte U8000-RH' in cold state, will try to load a firmware [ 422.056716] usb 1-2: firmware: requesting dvb-usb-dib0700-1.20.fw [ 422.069993] dvb-usb: downloading firmware from file 'dvb-usb-dib0700-1.20.fw' [ 422.272921] dib0700: firmware started successfully. [ 422.776096] dvb-usb: found a 'Gigabyte U8000-RH' in warm state. [ 422.776193] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer. [ 422.776477] DVB: registering new adapter (Gigabyte U8000-RH) [ 423.013923] DVB: registering adapter 0 frontend 0 (DiBcom 7000PC)... [ 423.038008] xc2028 3-0061: creating new instance [ 423.038017] xc2028 3-0061: type set to XCeive xc2028/xc3028 tuner [ 423.038187] input: IR-receiver inside an USB DVB receiver as /devices/pci0000:00/0000:00:1d.7/usb1/1-2/input/input12 [ 423.038277] dvb-usb: schedule remote query interval to 50 msecs. [ 423.038286] dvb-usb: Gigabyte U8000-RH successfully initialized and connected. [ 423.038473] usbcore: registered new interface driver dvb_usb_dib0700 [ 448.945812] BUG: unable to handle kernel NULL pointer dereference at 00000008 [ 448.945827] IP: [<c03a0813>] _request_firmware+0x1f3/0x250 [ 448.945844] *pde = 34b09067 *pte = 00000000 [ 448.945852] Oops: 0000 [#1] SMP [ 448.945860] last sysfs file: /sys/devices/pci0000:00/0000:00:1c.2/0000:01:00.0/ieee80211/phy0/rfkill1/state [ 448.945868] Modules linked in: tuner_xc2028 dvb_usb_dib0700 dib7000p dib7000m dvb_usb dvb_core dib3000mc dibx000_common dib0070 nls_iso8859_1 nls_cp437 vfat fat xt_limit xt_tcpudp ipt_LOG ipt_MASQUERADE xt_DSCP ipt_REJECT nf_conntrack_irc nf_conntrack_ftp xt_state binfmt_misc ppdev lp parport joydev iptable_nat nf_nat nf_conntrack_ipv4 arc4 nf_conntrack nf_defrag_ipv4 ecb iptable_mangle iptable_filter snd_hda_codec_realtek ip_tables x_tables snd_hda_intel snd_hda_codec snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event ath5k snd_seq snd_timer snd_seq_device psmouse mac80211 led_class serio_raw uvcvideo pcspkr snd soundcore videodev ath v4l1_compat snd_page_alloc atl2 cfg80211 eeepc_laptop usb_storage fbcon tileblit font bitblit softcursor i915 drm i2c_algo_bit video output intel_agp agpgart [ 448.945999] [ 448.946007] Pid: 3533, comm: kdvb-ad-0-fe-0 Not tainted (2.6.31-5-generic #24-Ubuntu) 900 [ 448.946014] EIP: 0060:[<c03a0813>] EFLAGS: 00010202 CPU: 0 [ 448.946021] EIP is at _request_firmware+0x1f3/0x250 [ 448.946026] EAX: 00000000 EBX: f493eb60 ECX: 00000001 EDX: c06fee50 [ 448.946032] ESI: c0710538 EDI: eb95c6b8 EBP: ebb9fd30 ESP: ebb9fcfc [ 448.946038] DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068 [ 448.946044] Process kdvb-ad-0-fe-0 (pid: 3533, ti=ebb9e000 task=f4ac9920 task.ti=ebb9e000) [ 448.946049] Stack: [ 448.946053] 80000400 f2d2bc00 000000c0 03400000 00000006 ebb9fd69 00000006 00000000 [ 448.946066] <0> ebb9fd94 f8f67062 eb9f3380 00000000 00000008 ebb9fd3c c03a0912 00000001 [ 448.946081] <0> ebb9fdcc f90bb730 ebb9fe78 f8f6785b 00000002 00000002 f4a826a8 f4a82000 [ 448.946096] Call Trace: [ 448.946112] [<f8f67062>] ? dib0700_ctrl_wr+0x52/0x70 [dvb_usb_dib0700] [ 448.946120] [<c03a0912>] ? request_firmware+0x12/0x20 [ 448.946132] [<f90bb730>] ? load_all_firmwares+0x60/0x6b0 [tuner_xc2028] [ 448.946144] [<f8f6785b>] ? dib0700_i2c_xfer_legacy+0x17b/0x1a0 [dvb_usb_dib0700] [ 448.946156] [<f8f67062>] ? dib0700_ctrl_wr+0x52/0x70 [dvb_usb_dib0700] [ 448.946168] [<f8f6785b>] ? dib0700_i2c_xfer_legacy+0x17b/0x1a0 [dvb_usb_dib0700] [ 448.946179] [<f90bc67b>] ? check_firmware+0x45b/0x870 [tuner_xc2028] [ 448.946191] [<c013617d>] ? update_curr+0x21d/0x230 [ 448.946202] [<c030cfc4>] ? rb_erase+0xb4/0x120 [ 448.946212] [<f90bcaf5>] ? generic_set_freq+0x65/0x500 [tuner_xc2028] [ 448.946221] [<c0124e69>] ? vmalloc_fault+0xc9/0xd0 [ 448.946231] [<c056de65>] ? do_page_fault+0x295/0x380 [ 448.946241] [<c0431d34>] ? i2c_transfer+0x94/0xc0 [ 448.946249] [<c056dbd0>] ? do_page_fault+0x0/0x380 [ 448.946259] [<f90bd265>] ? xc2028_set_params+0x185/0x276 [tuner_xc2028] [ 448.946267] [<c05600d8>] ? vsc_sata_init_one+0xba/0x268 [ 448.946279] [<f8f5229b>] ? dib7000p_set_frontend+0x4b/0x170 [dib7000p] [ 448.946290] [<c014ae25>] ? try_to_del_timer_sync+0x45/0x50 [ 448.946313] [<f8f18a31>] ? dvb_frontend_swzigzag_autotune+0x111/0x260 [dvb_core] [ 448.946321] [<c0136fb7>] ? try_to_wake_up+0xf7/0x350 [ 448.946329] [<c056b823>] ? _spin_lock_irq+0x13/0x20 [ 448.946348] [<f8f195f1>] ? dvb_frontend_swzigzag+0x1d1/0x260 [dvb_core] [ 448.946367] [<f8f19ff7>] ? dvb_frontend_thread+0x387/0x630 [dvb_core] [ 448.946376] [<c01568b0>] ? autoremove_wake_function+0x0/0x40 [ 448.946394] [<f8f19c70>] ? dvb_frontend_thread+0x0/0x630 [dvb_core] [ 448.946401] [<c01565c4>] ? kthread+0x74/0x80 [ 448.946408] [<c0156550>] ? kthread+0x0/0x80 [ 448.946418] [<c0103f17>] ? kernel_thread_helper+0x7/0x10 [ 448.946422] Code: 00 00 00 c7 44 24 04 d0 80 00 00 89 fa 89 34 24 ff 55 e0 83 45 e4 04 8b 45 e4 8b 00 85 c0 89 45 e0 75 d6 e9 52 fe ff ff 8b 45 e8 <8b> 70 08 e8 65 69 ff ff 89 5c 24 0c 89 74 24 08 89 44 24 04 c7 [ 448.946499] EIP: [<c03a0813>] _request_firmware+0x1f3/0x250 SS:ESP 0068:ebb9fcfc [ 448.946510] CR2: 0000000000000008 [ 448.946517] ---[ end trace f0d1f35290b71dab ]---
hello I have same bug. All info on launchpad : https://bugs.launchpad.net/ubuntu/+source/linux/+bug/429662 thanks
It's a regression, on 2.6.28 it's correctly working. (I don't have same hardware same as Tarvo)
I can confirm too on gentoo-sources-2.6.31. My brand new Gigabyte U8000 oops kernel.
WARNING: at fs/sysfs/dir.c:487 sysfs_add_one+0x92/0xb0() Hardware name: P5Q DELUXE sysfs: cannot create duplicate filename '/devices/platform/i2c-adapter/i2c-5/i2c-5' Modules linked in: tuner_xc2028 dvb_usb_dib0700 dib7000p dib7000m dvb_usb dvb_core dib3000mc dibx000_common nvidia(P) asus_atk0110 coretemp sco rfcomm l2cap fuse usb_storage [last unloaded: dvb_core] Pid: 13910, comm: kdvb-ad-0-fe-0 Tainted: P W 2.6.30-gentoo-r7 #1 Call Trace: [<c01c56f2>] ? sysfs_add_one+0x92/0xb0 [<c01c56f2>] ? sysfs_add_one+0x92/0xb0 [<c0129236>] ? warn_slowpath_common+0x76/0xd0 [<c01c56f2>] ? sysfs_add_one+0x92/0xb0 [<c01292db>] ? warn_slowpath_fmt+0x2b/0x30 [<c01c56f2>] ? sysfs_add_one+0x92/0xb0 [<c01c5cc8>] ? create_dir+0x48/0x90 [<c01c5d39>] ? sysfs_create_dir+0x29/0x50 [<c0278f6f>] ? kobject_get+0xf/0x20 [<c02790bd>] ? kobject_add_internal+0xcd/0x1c0 [<c027933d>] ? kobject_add+0x2d/0x60 [<c02ea387>] ? device_add+0xd7/0x580 [<c0278d1a>] ? kobject_init+0x2a/0xa0 [<c02f11bf>] ? _request_firmware+0x14f/0x3f0 [<c02f14ef>] ? request_firmware+0xf/0x20 [<f8d81031>] ? generic_set_freq+0xbf1/0x1c60 [tuner_xc2028] [<c034bb60>] ? usb_control_msg+0xe0/0x100 [<f8bfa659>] ? dib0700_i2c_xfer+0x179/0x3a0 [dvb_usb_dib0700] [<c015d4cd>] ? __pagevec_free+0x1d/0x30 [<c0160719>] ? release_pages+0x169/0x1b0 [<c036f69a>] ? i2c_transfer+0x7a/0xa0 [<c036f69a>] ? i2c_transfer+0x7a/0xa0 [<f8be5078>] ? dib7000p_write_word+0x58/0x70 [dib7000p] [<f8d823da>] ? xc2028_set_params+0x11a/0x270 [tuner_xc2028] [<f8be6376>] ? dib7000p_set_frontend+0x56/0xfb0 [dib7000p] [<c045b2f0>] ? __schedule+0x260/0x8f0 [<c011f9a6>] ? update_curr+0x146/0x1b0 [<c036f69a>] ? i2c_transfer+0x7a/0xa0 [<f8bb0681>] ? dvb_frontend_swzigzag_autotune+0xc1/0x240 [dvb_core] [<f8be5128>] ? dib7000p_read_word+0x68/0xc0 [dib7000p] [<c0132b71>] ? del_timer_sync+0x11/0x20 [<c0120002>] ? put_prev_task_fair+0x12/0x110 [<f8bb1099>] ? dvb_frontend_swzigzag+0x179/0x270 [dvb_core] [<f8bb1907>] ? dvb_frontend_thread+0x3a7/0x640 [dvb_core] [<c013d450>] ? autoremove_wake_function+0x0/0x50 [<f8bb1560>] ? dvb_frontend_thread+0x0/0x640 [dvb_core] [<c013d103>] ? kthread+0x43/0x80 [<c013d0c0>] ? kthread+0x0/0x80 [<c010395f>] ? kernel_thread_helper+0x7/0x18 ---[ end trace 3c6d2fffc448ec37 ]--- kobject_add_internal failed for i2c-5 with -EEXIST, don't try to register things with the same name in the same directory. Pid: 13910, comm: kdvb-ad-0-fe-0 Tainted: P W 2.6.30-gentoo-r7 #1 Call Trace: [<c0279102>] ? kobject_add_internal+0x112/0x1c0 [<c027933d>] ? kobject_add+0x2d/0x60 [<c02ea387>] ? device_add+0xd7/0x580 [<c0278d1a>] ? kobject_init+0x2a/0xa0 [<c02f11bf>] ? _request_firmware+0x14f/0x3f0 [<c02f14ef>] ? request_firmware+0xf/0x20 [<f8d81031>] ? generic_set_freq+0xbf1/0x1c60 [tuner_xc2028] [<c034bb60>] ? usb_control_msg+0xe0/0x100 [<f8bfa659>] ? dib0700_i2c_xfer+0x179/0x3a0 [dvb_usb_dib0700] [<c015d4cd>] ? __pagevec_free+0x1d/0x30 [<c0160719>] ? release_pages+0x169/0x1b0 [<c036f69a>] ? i2c_transfer+0x7a/0xa0 [<c036f69a>] ? i2c_transfer+0x7a/0xa0 [<f8be5078>] ? dib7000p_write_word+0x58/0x70 [dib7000p] [<f8d823da>] ? xc2028_set_params+0x11a/0x270 [tuner_xc2028] [<f8be6376>] ? dib7000p_set_frontend+0x56/0xfb0 [dib7000p] [<c045b2f0>] ? __schedule+0x260/0x8f0 [<c011f9a6>] ? update_curr+0x146/0x1b0 [<c036f69a>] ? i2c_transfer+0x7a/0xa0 [<f8bb0681>] ? dvb_frontend_swzigzag_autotune+0xc1/0x240 [dvb_core] [<f8be5128>] ? dib7000p_read_word+0x68/0xc0 [dib7000p] [<c0132b71>] ? del_timer_sync+0x11/0x20 [<c0120002>] ? put_prev_task_fair+0x12/0x110 [<f8bb1099>] ? dvb_frontend_swzigzag+0x179/0x270 [dvb_core] [<f8bb1907>] ? dvb_frontend_thread+0x3a7/0x640 [dvb_core] [<c013d450>] ? autoremove_wake_function+0x0/0x50 [<f8bb1560>] ? dvb_frontend_thread+0x0/0x640 [dvb_core] [<c013d103>] ? kthread+0x43/0x80 [<c013d0c0>] ? kthread+0x0/0x80 [<c010395f>] ? kernel_thread_helper+0x7/0x18 i2c-adapter i2c-5: fw_register_device: device_register failed xc2028 5-0061: Error -17 while requesting firmware xc3028-v27.fw xc2028 5-0061: Error on line 1118: -5
kernels from 2.6.29 to 31 are affected.
Created attachment 23137 [details] Firmware loading workaround patch This is only workaround to get TV work. It's not a solution.
djh - This actually *is* a regression and should be marked as such. I issued a High priority PULL request for Martin's fix in the v4l-dvb mainline, which addresses the oops (although in the long term the routine should be in common code). http://linuxtv.org/hg/v4l-dvb/rev/1ef17d053c9c
I get this too on 2.6.31.2 on Arch64 xc2028 7-0061: creating new instance xc2028 7-0061: type set to XCeive xc2028/xc3028 tuner input: IR-receiver inside an USB DVB receiver as /devices/pci0000:00/0000:00:1d.7/usb2/2-4/input/input13 dvb-usb: schedule remote query interval to 50 msecs. dvb-usb: Gigabyte U8000-RH successfully initialized and connected. usbcore: registered new interface driver dvb_usb_dib0700 xc2028 7-0061: Error on line 1135: -5 BUG: unable to handle kernel NULL pointer dereference at 0000000000000010 IP: [<ffffffff8129ff37>] _request_firmware+0x637/0x660 PGD 0 Oops: 0000 [#1] PREEMPT SMP last sysfs file: /sys/devices/platform/coretemp.0/temp1_input CPU 1 Modules linked in: tuner_xc2028 dvb_usb_dib0700 dib7000p dib7000m dvb_usb dvb_core dib3000mc dibx000_common dib0070 cryptd aes_x86_64 aes_generic ipv6 rfcomm sco bridge stp llc bnep l2cap btusb bluetooth omnibook coretemp fuse ext2 snd_seq_dummy snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss hid_logitech ff_memless arc4 usbhid hid joydev ecb snd_hda_codec_realtek iwlagn snd_hda_intel uvcvideo snd_hda_codec snd_hwdep snd_pcm snd_timer snd soundcore videodev v4l1_compat v4l2_compat_ioctl32 iwlcore mac80211 snd_page_alloc thermal nvidia(P) fan cfg80211 rfkill video output processor sdhci_pci sdhci iTCO_wdt iTCO_vendor_support mmc_core led_class uhci_hcd r8169 mii button psmouse ehci_hcd usbcore i2c_i801 i2c_core ohci1394 ieee1394 jmb38x_ms memstick sg serio_raw pcspkr intel_agp evdev battery ac rtc_cmos rtc_core rtc_lib ext4 mbcache jbd2 crc16 sr_mod cdrom sd_mod ahci libata scsi_mod Pid: 9916, comm: kdvb-ad-0-fe-0 Tainted: P 2.6.31-ARCH #1 Qosmio X300 RIP: 0010:[<ffffffff8129ff37>] [<ffffffff8129ff37>] _request_firmware+0x637/0x660 RSP: 0018:ffff8800b9887b50 EFLAGS: 00010202 RAX: 000000000000000d RBX: ffff88013fad1d20 RCX: 0000000000000000 RDX: 0000000000000000 RSI: ffffffff8145f129 RDI: ffff88013fad1d20 RBP: ffffffff81469ee0 R08: 0000000000000000 R09: 0000000000000000 R10: 2222222222222222 R11: 0000000000000001 R12: 0000000000000000 R13: 0000000000000000 R14: ffff8800b9887c98 R15: ffff88013fad1b50 FS: 0000000000000000(0000) GS:ffff88002803f000(0000) knlGS:0000000000000000 CS: 0010 DS: 0018 ES: 0018 CR0: 000000008005003b CR2: 0000000000000010 CR3: 0000000001001000 CR4: 00000000000406e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process kdvb-ad-0-fe-0 (pid: 9916, threadinfo ffff8800b9886000, task ffff88012d7270a0) Stack: 0000000000000000 0000000033467270 00000001b9887db0 ffff880135396d98 <0> ffff8800aac81000 0000000033467270 ffff880124a27c08 ffff880135396d00 <0> ffff8800aac81000 ffff88013fad1d20 ffff880124a27c08 0000000000000000 Call Trace: [<ffffffffa0f8b319>] ? generic_set_freq+0xb19/0x19d0 [tuner_xc2028] [<ffffffff813860d8>] ? __mutex_lock_slowpath+0x258/0x360 [<ffffffffa01a395b>] ? i2c_transfer+0xdb/0x130 [i2c_core] [<ffffffffa0f710ed>] ? dib7000p_write_word+0x6d/0xa0 [dib7000p] [<ffffffffa0f727d7>] ? dib7000p_set_frontend+0x67/0xf60 [dib7000p] [<ffffffff810687ef>] ? try_to_del_timer_sync+0x5f/0x80 [<ffffffffa0f4f7bf>] ? dvb_frontend_swzigzag_autotune+0x11f/0x280 [dvb_core] [<ffffffff810688e0>] ? process_timeout+0x0/0x40 [<ffffffffa0f508fa>] ? dvb_frontend_swzigzag+0x20a/0x2a0 [dvb_core] [<ffffffffa0f50dd8>] ? dvb_frontend_thread+0x448/0x710 [dvb_core] [<ffffffff8107a0d0>] ? autoremove_wake_function+0x0/0x60 [<ffffffffa0f50990>] ? dvb_frontend_thread+0x0/0x710 [dvb_core] [<ffffffff81079b46>] ? kthread+0xb6/0xc0 [<ffffffff8100d49a>] ? child_rip+0xa/0x20 [<ffffffff81079a90>] ? kthread+0x0/0xc0 [<ffffffff8100d490>] ? child_rip+0x0/0x20 Code: ef bd f4 ff ff ff e8 59 26 ff ff 48 c7 c1 40 8f 3c 81 48 89 c6 48 c7 c7 70 d5 45 81 48 89 da 31 c0 e8 b0 41 0e 00 e9 d6 fc ff ff <49> 8b 6d 10 4c 89 ef e8 2d 26 ff ff 48 89 d9 48 89 c6 48 c7 c7 RIP [<ffffffff8129ff37>] _request_firmware+0x637/0x660 RSP <ffff8800b9887b50> CR2: 0000000000000010 ---[ end trace 816d00dbf94c32d4 ]---