Moderator Control Panel ]

Ubuntu 11.10: NULL pointer error in dmesg

Ubuntu 11.10: NULL pointer error in dmesg

Postby cboling » Sat Nov 26, 2011 6:06 am

Similar story and result as viewtopic.php?f=45&t=1808 except that, due to other upgrade problems, I did a clean install of Ubuntu.

I'm running 32-bit Ubuntu 11.10 (kernel: 3.0.0-13.22-generic). I successfully built the 1118 drivers (using README_TBS8921, READMEs/README_TBS6920_8920_UBUNTU for guidance) by:
Code: Select All Code
(verified that linux-headers installed; no linux-kernel-devel pkg exists.)
(unzipped to /temp/dvb)
mv dvb-fe-cx24116.fw /lib/firmware
tar xjvf linux-tbs-drivers.tar.bz2
cd linux-tbs-drivers
v4l/tbs-x86.sh
make
make install


I'm no expert on the kernel, but modprobe appears to be complaining about a bad pointer reference in the 8922's module, and dropping it. In any case, no /dev/dvb* tree is created. Here's the dmesg output:
Code: Select All Code
[   24.281893] Linux media interface: v0.10
[   24.317349] Linux video capture interface: v2.00
[   24.434807] i915 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[   24.434819] i915 0000:00:02.0: setting latency timer to 64
[   24.472537] IR NEC protocol handler initialized
[   24.497444] cx88/0: cx2388x v4l2 driver version 0.0.9 loaded
[   24.497531] cx8800 0000:01:02.0: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[   24.531986] IR RC5(x) protocol handler initialized
[   24.532805] cx88/2: cx2388x MPEG-TS Driver Manager version 0.0.9 loaded
[   24.546476] IR RC6 protocol handler initialized
[   24.562390] IR JVC protocol handler initialized
[   24.569796] cx88[0]: subsystem: 8922:8888, board: TBS 8922 DVB-S/S2 [card=90,autodetected], frontend(s): 1
[   24.569803] cx88[0]: TV tuner type 4, Radio tuner type -1
[   24.583687] IR Sony protocol handler initialized
[   24.606458] psmouse serio1: ID: 10 00 64
[   24.608912] IR MCE Keyboard/mouse protocol handler initialized
[   24.615393] [drm] Supports vblank timestamp caching Rev 1 (10.10.2010).
[   24.615401] [drm] Driver supports precise vblank timestamp query.
[   24.632417] lirc_dev: IR Remote Control driver registered, major 250
[   24.637635] IR LIRC bridge handler initialized
[   24.638196] vgaarb: device changed decodes: PCI:0000:00:02.0,olddecodes=io+mem,decodes=io+mem:owns=io+mem
[   24.878928] [drm] initialized overlay support
[   25.097188] input: PS2++ Logitech Wheel Mouse as /devices/platform/i8042/serio1/input/input3
[   25.144106] Registered IR keymap rc-tbs-nec
[   25.144656] input: cx88 IR (TBS 8922 DVB-S/S2) as /devices/pci0000:00/0000:00:1e.0/0000:01:02.0/rc/rc0/input4
[   25.144953] rc0: cx88 IR (TBS 8922 DVB-S/S2) as /devices/pci0000:00/0000:00:1e.0/0000:01:02.0/rc/rc0
[   25.147858] input: MCE IR Keyboard/Mouse (cx88xx) as /devices/virtual/input/input5
[   25.148949] rc rc0: lirc_dev: lirc_register_driver: sample_rate: 0
[   25.149212] rc rc0: lirc_dev: driver ir-lirc-codec (cx88xx) registered at minor = 0
[   25.149228] cx88[0]/0: found at 0000:01:02.0, rev: 5, irq: 17, latency: 32, mmio: 0xfc000000
[   25.149607] cx88[0]/0: registered device video0 [v4l2]
[   25.149924] cx88[0]/0: registered device vbi0
[   25.149977] cx88[0]/2: cx2388x 8802 Driver Manager
[   25.150002] cx88-mpeg driver manager 0000:01:02.2: PCI INT A -> GSI 17 (level, low) -> IRQ 17
[   25.150013] cx88[0]/2: found at 0000:01:02.2, rev: 5, irq: 17, latency: 32, mmio: 0xfd000000
[   25.268351] cx88/2: cx2388x dvb driver version 0.0.9 loaded
[   25.268358] cx88/2: registering cx8802 driver, type: dvb access: shared
[   25.268365] cx88[0]/2: subsystem: 8922:8888, board: TBS 8922 DVB-S/S2 [card=90]
[   25.268371] cx88[0]/2: cx2388x based DVB/ATSC card
[   25.268374] cx8802_alloc_frontends() allocating 1 frontend(s)
[   25.377147] tbs8922fe: module license 'TurboSight Proprietary: www.tbsdtv.com' taints kernel.
[   25.377155] Disabling lock debugging due to kernel taint
[   25.378121] BUG: unable to handle kernel NULL pointer dereference at   (null)
[   25.378132] IP: [<dfa37c3e>] tbs8922fe_attach+0xe/0x3d0 [tbs8922fe]
[   25.378146] *pde = 0ee34067 *pte = 00000000
[   25.378152] Oops: 0000 [#1] SMP
[   25.378158] Modules linked in: tbs8922fe(P) snd_rawmidi cx88_dvb_core(+) cx88_vp3054_i2c videobuf_dvb dvb_core rc_tbs_nec snd_seq_midi_event snd_seq snd_timer snd_seq_device ir_lirc_codec lirc_dev ir_mce_kbd_decoder ir_sony_decoder ir_jvc_decoder ir_rc6_decoder ir_rc5_decoder cx8802 cx8800 cx88xx ir_nec_decoder i915(+) rc_core tveeprom v4l2_common videodev snd media psmouse serio_raw soundcore videobuf_dma_sg snd_page_alloc btcx_risc videobuf_core shpchp drm_kms_helper intel_rng drm parport_pc nfsd nfs lockd fscache auth_rpcgss nfs_acl sunrpc i2c_algo_bit video lp parport e100 floppy
[   25.378223]
[   25.378228] Pid: 594, comm: modprobe Tainted: P            3.0.0-13-generic #22-Ubuntu Gateway                         E-4100                         /D865GLC                       
[   25.378238] EIP: 0060:[<dfa37c3e>] EFLAGS: 00010292 CPU: 0
[   25.378244] EIP is at tbs8922fe_attach+0xe/0x3d0 [tbs8922fe]
[   25.378248] EAX: 00000000 EBX: cee5bc00 ECX: dfa37c30 EDX: ced54050
[   25.378252] ESI: dfa5c080 EDI: 00000002 EBP: ce08bebc ESP: ce08bea4
[   25.378256]  DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
[   25.378260] Process modprobe (pid: 594, ti=ce08a000 task=ceebcc80 task.ti=ce08a000)
[   25.378264] Stack:
[   25.378266]  dfa38324 dfa0817e dfa39360 cee5bc00 daf94800 00000002 ce08bf0c dfa57b9d
[   25.378277]  00000001 dfa5a9df 00000002 00000084 daf94800 00000000 cee93ac0 ced54010
[   25.378287]  daf9491c daf94804 ced54000 00000034 00005ed7 dfa5c000 ce08bf0c dfa5c000
[   25.378298] Call Trace:
[   25.378306]  [<dfa0817e>] ? videobuf_dvb_get_frontend+0x4e/0x60 [videobuf_dvb]
[   25.378319]  [<dfa57b9d>] cx8802_dvb_probe+0x98d/0x24a0 [cx88_dvb_core]
[   25.378331]  [<df9384f9>] cx8802_register_driver+0x1c9/0x270 [cx8802]
[   25.378341]  [<df86f024>] dvb_init+0x24/0x1000 [cx88_dvb_core]
[   25.378351]  [<c1001125>] do_one_initcall+0x35/0x170
[   25.378364]  [<df86f000>] ? 0xdf86efff
[   25.378374]  [<c10829fd>] sys_init_module+0xad/0x210
[   25.378382]  [<c1126915>] ? sys_close+0x75/0xd0
[   25.378389]  [<c152cc24>] syscall_call+0x7/0xb
[   25.378396]  [<c105007b>] ? proc_put_char+0x5b/0x70
[   25.378400] Code: b6 00 00 00 00 83 c4 24 31 c0 5b 5e 5f 5d c3 8d b4 26 00 00 00 00 8d bc 27 00 00 00 00 55 89 e5 57 56 89 c6 53 83 ec 0c 8b 42 10 <8b> 38 b8 2c 01 00 00 89 55 ec e8 73 ed 61 e1 c7 04 24 ac 82 a3
[   25.378459] EIP: [<dfa37c3e>] tbs8922fe_attach+0xe/0x3d0 [tbs8922fe] SS:ESP 0068:ce08bea4
[   25.378468] CR2: 0000000000000000
[   25.378473] ---[ end trace 8f3ae7b57a847b4c ]---
[   25.402941] fbcon: inteldrmfb (fb0) is primary device
[   25.406302] Console: switching to colour frame buffer device 160x64
[   25.406361] fb0: inteldrmfb frame buffer device
[   25.406366] drm: registered panic notifier
[   25.406444] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0
[   25.885440] init: failsafe main process (626) killed by TERM signal


Any ideas?
cboling
 
Posts: 4
Joined: Sat Nov 26, 2011 4:26 am

Re: Ubuntu 11.10: NULL pointer error in dmesg

Postby cboling » Sun Jan 15, 2012 6:33 am

*sigh* I've been playing with this for nearly 3 months now, with many attempts to install the driver -- and several complete Linux re-installs to ensure a clean environment -- and still haven't gotten the TBS8922 card (with CX23883—39 chip) to work. :(

It doesn't appear that I need to do anything with dvb-fe-cx24116.fw for this card. Can anyone confirm?

Here's the process that I followed today:
- Install Mythbuntu 11.10 from CD, and apply all updates. (kernel is 3.0.0-14-generic). Remove old 3.0.0-12 image/headers for good measure.
- Unzip TBS driver 1118 to a dir, and go there.
# tar xjvf linux-tbs-drivers.tar.bz2
# cd linux-tbs-drivers
# v4l/tbs-x86.sh
# make
# make install

Upon reboot, dmesg shows the attempt to allocate a frontend failing as shown in the 1st post of this topic.
HELP! I'm stumped.

Since I saw this during the make:
WARNING: could not find /dvb_drivers/tbs/linux-tbs-drivers/v4l/.tbs8922fe_driver.o.cmd for /dvb_drivers/tbs/linux-tbs-drivers/v4l/tbs8922fe_driver.o

I went back and created a symlink that looked (to my uneducated eyes) like it might be helpful.
# ln -s .tbs8922fe.o.cmd .tbs8922fe_driver.o.cmd
I re-ran make (it eliminated the warning for the 8922 and regenerated tbs8922fe.mod.o & tbs8922fe.ko) and make install, but it made no difference in the next boot.

I've attached copies of complete logs. The zip file contains:
  • lspci.fresh: lspci output before installing driver
  • dmesg.fresh: dmesg output before installing driver
  • make_output1: output from 1st make command
  • make_install_output1: ...and subsequent make install
  • dmesg.make1: dmesg output following reboot after install procedure described above
  • make_output2: output from 2nd make command (after creating symlink to .tbs8922fe.o.cmd)
  • make_install_output2: ...and subsequent make install
  • dmesg.make2: dmesg output following next reboot, after install using symlink.

I would greatly appreciate any help in figuring this out.
Attachments
logs.zip
dmesg.fresh
dmesg.make1
dmesg.make2
lspci.fresh
make_install_output1
make_install_output2
make_output1
make_output2
(61.22 KiB) Downloaded 353 times
cboling
 
Posts: 4
Joined: Sat Nov 26, 2011 4:26 am

Re: Ubuntu 11.10: NULL pointer error in dmesg

Postby bob » Mon Jan 16, 2012 10:15 am

Please try to install X64 bit Ubuntu.
Some main board have unexpected issue with x32 bit version.
Regards!
bob
 
Posts: 63
Joined: Tue Aug 10, 2010 11:42 am

Re: Ubuntu 11.10: NULL pointer error in dmesg

Postby cody » Wed Jan 18, 2012 3:21 am

hi, the reason for the problem is obvious and actually what you're doing wrong is covered by the README files in the driver package, more specifically by:

- for x86 kernel 3.x (x86 32 bit installations of kernel 3.x):

# ./v4l/tbs-x86_r3.sh


- for x86 kernel 2.6.x (x86 32 bit installations of kernel 2.6.x):

# ./v4l/tbs-x86.sh


so, you're doing everything right except you're using the wrong 'tbs-x86.sh' for your kernel instead the correct 'tbs-x86_r3.sh' and thus if i have to modify the installation steps from your first post to correct one they should be:

mv dvb-fe-cx24116.fw /lib/firmware
tar xjvf linux-tbs-drivers.tar.bz2
cd linux-tbs-drivers
./v4l/tbs-x86_r3.sh
make
make install


also, the same installation will result in working driver for TBS 8922 and not only for the Qbox.
cody
 
Posts: 627
Joined: Tue Apr 13, 2010 11:20 pm

Re: Ubuntu 11.10: NULL pointer error in dmesg

Postby cboling » Wed Jan 18, 2012 8:13 am

- for x86 kernel 3.x (x86 32 bit installations of kernel 3.x):
# ./v4l/tbs-x86_r3.sh

Wow! That was stupid of me to miss during every single recent build, wasn't it? It sounds vaguely familiar now that you mention it; I'm not sure how I dropped that.

Thanks! It loads into the kernel just fine now.

cody Wrote:the reason for the problem is obvious and...is covered by the README files

In my defence, it's only that simple if you know which README (if any) to trust. Since TBS didn't see fit to include a README for the 8922, I had to guess which file(s) might contain applicable information, and was trying to get the best overall picture from multiple instruction sets. README/README_TBS6920_8920_UBUNTU (which name suggests content more relevant to Ubuntu systems) didn't suggest running any arch-specific script at all!

Thanks again for the help.
cboling
 
Posts: 4
Joined: Sat Nov 26, 2011 4:26 am


Return to Linux

Who is online

Users browsing this forum: No registered users and 2 guests