Re: [linux-dvb] somebody messed something on xc2028 code?

Devin Heitmueller <[email protected]>
Newsgroups gmane.linux.drivers.video-input-infrastructure,gmane.linux.drivers.dvb
Message-ID <[email protected]>
On Sat, Oct 31, 2009 at 8:35 AM, Albert Comerma
<[email protected]> wrote:
> Hi all, I just updated my ubuntu to karmic and found with surprise that with
> 2.6.31 kernel my device does not work... It seems to be related to the
> xc2028 code part since the kernel explosion happens when you try to tune the
> device, here it's my dmesg, any idea?
>
> Albert
>
> [ 1622.032196] usb 1-1: new high speed USB device using ehci_hcd and address
> 4
> [ 1622.166041] usb 1-1: configuration #1 chosen from 1 choice
> [ 1622.167341] dvb-usb: found a 'Pinnacle Expresscard 320cx' in cold state,
> will try to load a firmware
> [ 1622.167353] usb 1-1: firmware: requesting dvb-usb-dib0700-1.20.fw
> [ 1622.188465] dvb-usb: downloading firmware from file
> 'dvb-usb-dib0700-1.20.fw'
> [ 1622.396737] dib0700: firmware started successfully.
> [ 1622.900198] dvb-usb: found a 'Pinnacle Expresscard 320cx' in warm state.
> [ 1622.900308] dvb-usb: will pass the complete MPEG2 transport stream to the
> software demuxer.
> [ 1622.900759] DVB: registering new adapter (Pinnacle Expresscard 320cx)
> [ 1623.157839] DVB: registering adapter 0 frontend 0 (DiBcom 7000PC)...
> [ 1623.158165] xc2028 4-0061: creating new instance
> [ 1623.158173] xc2028 4-0061: type set to XCeive xc2028/xc3028 tuner
> [ 1623.158333] input: IR-receiver inside an USB DVB receiver as
> /devices/pci0000:00/0000:00:1a.7/usb1/1-1/input/input16
> [ 1623.158418] dvb-usb: schedule remote query interval to 50 msecs.
> [ 1623.158427] dvb-usb: Pinnacle Expresscard 320cx successfully initialized
> and connected.
> [ 1670.979678] CE: hpet increasing min_delta_ns to 15000 nsec
> [ 1753.316527] BUG: unable to handle kernel NULL pointer dereference at
> 00000008
> [ 1753.316543] IP: [<c03a8a13>] _request_firmware+0x1f3/0x250
> [ 1753.316562] *pde = 00000000
> [ 1753.316570] Oops: 0000 [#2] SMP
> [ 1753.316578] last sysfs file:
> /sys/devices/LNXSYSTM:00/device:00/PNP0C0A:00/power_supply/BAT0/charge_full
> [ 1753.316586] Modules linked in: tuner_xc2028 dvb_usb_dib0700 dib7000p
> dib7000m dvb_usb dvb_core dib3000mc dibx000_common dib0070 hidp binfmt_misc
> vboxnetflt vboxnetadp vboxdrv ppdev parport_pc snd_hda_codec_idt
> snd_hda_intel snd_hda_codec snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm arc4
> ecb snd_seq_dummy snd_seq_oss iwlagn bridge stp bnep snd_seq_midi iwlcore
> snd_rawmidi joydev iptable_nat snd_seq_midi_event mac80211 nf_nat snd_seq
> nf_conntrack_ipv4 nf_conntrack nf_defrag_ipv4 snd_timer snd_seq_device
> iptable_mangle snd sbp2 dell_wmi psmouse iptable_filter serio_raw ip_tables
> soundcore x_tables snd_page_alloc cfg80211 uvcvideo videodev v4l1_compat
> sdhci_pci sdhci led_class lp btusb dell_laptop dcdbas nvidia(P) parport
> usbhid dm_raid45 xor ohci1394 video output ieee1394 tg3 intel_agp agpgart
> [ 1753.316753]

This was actually a regression related to the dib7000 driver and any
tuner that uses request_firmware().  I checked in a fix for one board
that hit it.  It was introduced because 2.6.28 started using the first
parameter passed to request_firmware(), and the dib7000 driver was
sending null.

Can you clarify which bridge your device uses.

Devin

-- 
Devin J. Heitmueller - Kernel Labs
http://www.kernellabs.com
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.