[mythtv-users] VIA CLE266 Decoding causes SIGSEGV (mythtv-0.15)

rwk at americom.com rwk at americom.com
Fri May 28 07:22:41 EDT 2004


I tried posting this to mythtv-dev but it never made it (maybe because I
am not subscribed?)  I am reposting to mythtv-users...

Hi,

I am trying to get the VIA CLE266 HW decoder working with mythtv-0.15 on
a 2.6 kernel.  Everything is working when I use software decoding.  When
I select HW decoding (from the settings) mythfrontend dies.

Here is what I have:

. PVR-250 (on a remote server in the other room)
. EPIA-M10000 (Nehemiah client box - diskless - dhcp boot)
. 1.4 build of gentoo
. 2.6.6 kernel
. patch-2.6.6-epia1.bz2 (from: http://www.alterself.com/~epia/wiki/tiki-index.php)
. latest alsa
. libddmpeg-1.6  (from emerge libddmpeg)
. ivtv-0.1.9 (from ivtv emerge)
. xfree-epia (from xfree-epia-4.3.99.902-r6.ebuild)
. mythtv-0.15 (from download today)
. VIA cle266 support is enabled in settings.pro
. UseViaSlice = 1 in table settings (it works fine when UseViaSlice = 0)
. I am running as root

When I try to play a recording from the server I get (in the mythfrontend log):
2004-05-28 00:49:09 mythfrontend version: 0.15.20040505-1 www.mythtv.org
2004-05-28 00:49:09 Enabled verbose msgs : important general
2004-05-28 00:49:10 Registering Internal as a media playback plugin.
2004-05-28 00:49:12 Starting media monitor.
2004-05-28 00:49:17 Connecting to backend server: 192.168.1.9:6543 (try 1 of 5)
2004-05-28 00:49:17 Using protocol version 8
2004-05-28 00:49:18 Using protocol version 8
2004-05-28 01:54:01 mythfrontend version: 0.15.20040525-1 www.mythtv.org
2004-05-28 01:54:01 Enabled verbose msgs : important general
2004-05-28 01:54:02 Registering Internal as a media playback plugin.
2004-05-28 01:54:30 Starting media monitor.
2004-05-28 01:54:35 Connecting to backend server: 192.168.1.9:6543 (try 1 of 5)
2004-05-28 01:54:35 Using protocol version 8
2004-05-28 01:54:35 Using protocol version 8
2004-05-28 01:55:15 Default
Waiting for data: 83976 36084
2004-05-28 01:55:21 Opening ALSA audio device 'default'.

then mythfrontend SIGSEGVs.

Please let me know what you suggest...  or if you need any additional
information (like my kernel .config or other lib levels etc.).

Thanks!
Dick

Following are my: gdb backtrace, lsmod, settings.pro, modules.conf
******************************************************************************

I compiled with DEBUG and attached to the running mythfrontend with gdb
before playing.  As soon as I play it dies.  The backtrace is:

# gdb /usr/bin/mythfrontend 8520
GNU gdb 6.0
Copyright 2003 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1".

Attaching to program: /usr/bin/mythfrontend, process 8520
Reading symbols from /usr/lib/libmythtv-0.15.so.0...done.
Loaded symbols for /usr/lib/libmythtv-0.15.so.0
Reading symbols from /usr/lib/libmythavformat-0.15.so.0...done.
Loaded symbols for /usr/lib/libmythavformat-0.15.so.0
Reading symbols from /usr/lib/libmythavcodec-0.15.so.0...done.
Loaded symbols for /usr/lib/libmythavcodec-0.15.so.0
Reading symbols from /usr/lib/libmyth-0.15.so.0...done.
Loaded symbols for /usr/lib/libmyth-0.15.so.0
Reading symbols from /usr/lib/libfreetype.so.6...done.
Loaded symbols for /usr/lib/libfreetype.so.6
Reading symbols from /usr/lib/libmp3lame.so.0...done.
Loaded symbols for /usr/lib/libmp3lame.so.0
Reading symbols from /usr/X11R6/lib/libXinerama.so.1...done.
Loaded symbols for /usr/X11R6/lib/libXinerama.so.1
Reading symbols from /usr/X11R6/lib/libXv.so.1...done.
Loaded symbols for /usr/X11R6/lib/libXv.so.1
Reading symbols from /usr/X11R6/lib/libX11.so.6...done.
Loaded symbols for /usr/X11R6/lib/libX11.so.6
Reading symbols from /usr/X11R6/lib/libXext.so.6...done.
Loaded symbols for /usr/X11R6/lib/libXext.so.6
Reading symbols from /usr/X11R6/lib/libXxf86vm.so.1...done.
Loaded symbols for /usr/X11R6/lib/libXxf86vm.so.1
Reading symbols from /usr/lib/libddmpeg.so...done.
Loaded symbols for /usr/lib/libddmpeg.so
Reading symbols from /usr/qt/3/lib/libqt-mt.so.3...done.
Loaded symbols for /usr/qt/3/lib/libqt-mt.so.3
Reading symbols from /lib/libpthread.so.0...done.
[Thread debugging using libthread_db enabled]
[New Thread 16384 (LWP 8520)]
[New Thread 32769 (LWP 8521)]
[New Thread 16386 (LWP 8522)]
Loaded symbols for /lib/libpthread.so.0
Reading symbols from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2/libstdc++.so.5...
done.
Loaded symbols for /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2/libstdc++.so.5
Reading symbols from /lib/libm.so.6...done.
Loaded symbols for /lib/libm.so.6
Reading symbols from /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2/libgcc_s.so.1...
done.
Loaded symbols for /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.2/libgcc_s.so.1
Reading symbols from /lib/libc.so.6...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /usr/lib/libasound.so.2...done.
Loaded symbols for /usr/lib/libasound.so.2
Reading symbols from /usr/lib/libz.so.1...done.
Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /usr/lib/libmng.so.1...done.
Loaded symbols for /usr/lib/libmng.so.1
Reading symbols from /usr/lib/libjpeg.so.62...done.
Loaded symbols for /usr/lib/libjpeg.so.62
Reading symbols from /usr/lib/libpng.so.3...done.
Loaded symbols for /usr/lib/libpng.so.3
Reading symbols from /usr/lib/opengl/xfree/lib/libGL.so.1...done.
Loaded symbols for /usr/lib/opengl/xfree/lib/libGL.so.1
Reading symbols from /usr/X11R6/lib/libXmu.so.6...done.
Loaded symbols for /usr/X11R6/lib/libXmu.so.6
Reading symbols from /usr/X11R6/lib/libXi.so.6...done.
Loaded symbols for /usr/X11R6/lib/libXi.so.6
Reading symbols from /usr/X11R6/lib/libXrender.so.1...done.
Loaded symbols for /usr/X11R6/lib/libXrender.so.1
Reading symbols from /usr/X11R6/lib/libXrandr.so.2...done.
Loaded symbols for /usr/X11R6/lib/libXrandr.so.2
Reading symbols from /usr/X11R6/lib/libXcursor.so.1...done.
Loaded symbols for /usr/X11R6/lib/libXcursor.so.1
Reading symbols from /usr/X11R6/lib/libXft.so.2...done.
Loaded symbols for /usr/X11R6/lib/libXft.so.2
Reading symbols from /usr/lib/libfontconfig.so.1...done.
Loaded symbols for /usr/lib/libfontconfig.so.1
Reading symbols from /usr/X11R6/lib/libSM.so.6...done.
Loaded symbols for /usr/X11R6/lib/libSM.so.6
Reading symbols from /usr/X11R6/lib/libICE.so.6...done.
Loaded symbols for /usr/X11R6/lib/libICE.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /usr/X11R6/lib/libXt.so.6...done.
Loaded symbols for /usr/X11R6/lib/libXt.so.6
Reading symbols from /usr/lib/libexpat.so.0...done.
Loaded symbols for /usr/lib/libexpat.so.0
Reading symbols from /usr/X11R6/lib/modules/dri/via_dri.so...done.
Loaded symbols for /usr/X11R6/lib/modules/dri/via_dri.so
Reading symbols from /usr/X11R6/lib/X11/locale/lib/common/xlcDef.so.2...done.
Loaded symbols for /usr/X11R6/lib/X11/locale/lib/common/xlcDef.so.2
Reading symbols from /usr/X11R6/lib/X11/locale/lib/common/ximcp.so.2...done.
Loaded symbols for /usr/X11R6/lib/X11/locale/lib/common/ximcp.so.2
Reading symbols from /usr/qt/3/plugins/sqldrivers/libqsqlmysql.so...done.
Loaded symbols for /usr/qt/3/plugins/sqldrivers/libqsqlmysql.so
Reading symbols from /usr/lib/libmysqlclient.so.12...done.
Loaded symbols for /usr/lib/libmysqlclient.so.12
Reading symbols from /usr/lib/libGLU.so.1...done.
Loaded symbols for /usr/lib/libGLU.so.1
Reading symbols from /lib/libcrypt.so.1...done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /usr/lib/libssl.so.0.9.6...done.
Loaded symbols for /usr/lib/libssl.so.0.9.6
Reading symbols from /usr/lib/libcrypto.so.0.9.6...done.
Loaded symbols for /usr/lib/libcrypto.so.0.9.6
Reading symbols from /lib/libnss_files.so.2...done.
Loaded symbols for /lib/libnss_files.so.2
Reading symbols from /usr/X11R6/lib/X11/locale/lib/common/xomGeneric.so.2...
done.
Loaded symbols for /usr/X11R6/lib/X11/locale/lib/common/xomGeneric.so.2
Reading symbols from /lib/libnss_compat.so.2...done.
Loaded symbols for /lib/libnss_compat.so.2
Reading symbols from /lib/libnss_nis.so.2...done.
Loaded symbols for /lib/libnss_nis.so.2
0x414096a1 in select () from /lib/libc.so.6
(gdb) bt
#0  0x414096a1 in select () from /lib/libc.so.6
#1  0x411f7cb4 in __JCR_LIST__ () from /usr/qt/3/lib/libqt-mt.so.3
(gdb) c
Continuing.
[New Thread 32771 (LWP 8582)]
[New Thread 49156 (LWP 8583)]
[New Thread 65541 (LWP 8584)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 49156 (LWP 8583)]
0x40b444d8 in Macro_VidREGFlush () from /usr/lib/libddmpeg.so
(gdb) bt
#0  0x40b444d8 in Macro_VidREGFlush () from /usr/lib/libddmpeg.so
#1  0x40b4316c in VIASUBPicture () from /usr/lib/libddmpeg.so
#2  0x40365112 in VideoOutputVIA::CreateViaBuffers() (this=0x84d13b8)
    at videoout_viaslice.cpp:298
#3  0x40364da6 in VideoOutputVIA::Init(int, int, float, unsigned long, int, int, int, int, unsigned long) (this=0x84d13b8, width=480, height=480, 
    aspect=1.33333337, winid=18874773, winx=0, winy=0, winw=1024, winh=768, 
    embedid=0) at videoout_viaslice.cpp:239
#4  0x401bedb7 in NuppelVideoPlayer::InitVideo() (this=0x8257f70)
    at NuppelVideoPlayer.cpp:390
#5  0x401c50ad in NuppelVideoPlayer::StartPlaying() (this=0x8257f70)
    at NuppelVideoPlayer.cpp:1932
#6  0x4025e2fb in SpawnDecode(void*) (param=0x8257f70) at tv_play.cpp:168
#7  0x4120af70 in pthread_start_thread () from /lib/libpthread.so.0
#8  0x4120b072 in pthread_start_thread_event () from /lib/libpthread.so.0
#9  0x4140fe1a in clone () from /lib/libc.so.6
(gdb)

******************************************************************************
# lsmod
******************************************************************************
Module                  Size  Used by
ehci_hcd               27332  0 
snd_via82xx            25088  1 
snd_pcm                94660  2 snd_via82xx
snd_timer              24164  1 snd_pcm
snd_ac97_codec         64612  1 snd_via82xx
snd_page_alloc         11396  2 snd_via82xx,snd_pcm
snd_mpu401_uart         7584  1 snd_via82xx
snd_rawmidi            21536  1 snd_mpu401_uart
snd                    47512  7 snd_via82xx,snd_pcm,snd_timer,snd_ac97_codec,snd_mpu401_uart,snd_rawmidi
tuner                  18636  0 
bttv                  152940  0 
video_buf              20676  1 bttv
v4l2_common             6144  1 bttv
btcx_risc               4808  1 bttv
soundcore               9760  2 snd,bttv
via_v4l_drv           130448  0 
videodev                9664  2 bttv,via_v4l_drv
via                    64256  3 via_v4l_drv

******************************************************************************
settings.pro
******************************************************************************

CONFIG += debug
#CONFIG += release

PREFIX = /usr

LIBVERSION = 0.15

INCLUDEPATH += $${PREFIX}/include
INCLUDEPATH *= /usr/local/include

DEFINES += _GNU_SOURCE
DEFINES += _FILE_OFFSET_BITS=64
DEFINES += PREFIX=\"$${PREFIX}\"

release {
        DEFINES += MMX
        QMAKE_CXXFLAGS_RELEASE = -O3 -march=pentiumpro -fomit-frame-pointer
        QMAKE_CFLAGS_RELEASE = $${QMAKE_CXXFLAGS_RELEASE}
}

EXTRA_LIBS = -lfreetype -lmp3lame

# X11 support
CONFIG += using_x11

# Default Xv support
CONFIG += using_xv
EXTRA_LIBS += -L/usr/X11R6/lib -lXinerama -lXv -lX11 -lXext -lXxf86vm

# IVTV (PVR-x50) support.  Disable if building on Windows.
CONFIG += using_ivtv
DEFINES += USING_IVTV

# LCDProc support
#DEFINES += LCD_DEVICE

# Native ALSA support
CONFIG += using_alsa
ALSA_LIBS = -lasound

# Native ARTS support
#CONFIG += using_arts
#ARTS_LIBS = -L/opt/kde3/lib -ldl -lartsc -lpthread
#EXTRA_LIBS += -L/opt/kde3/lib -ldl -lartsc -lpthread
#INCLUDEPATH += /opt/kde3/include
# For Mandrake, use the following:
#ARTS_LIBS = -ldl -lartsc -lpthread
#EXTRA_LIBS += -ldl -lartsc -lpthread
#INCLUDEPATH += /usr/include/artsc

# DVB support
#CONFIG += using_dvb
#DEFINES += USING_DVB
# Note: INCLUDEPATH should point to the directory with
#   'linux/dvb/frontend.h', not the directory with frontend.h
#INCLUDEPATH += /usr/src/linuxtv-dvb-1.0.1/include

# Native lirc support
#CONFIG += using_lirc
#LIRC_LIBS = -llirc_client

# XvMC support, modify as necessary.
#CONFIG += using_xvmc
#DEFINES += USING_XVMC
#EXTRA_LIBS += -lXvMCNVIDIA -lXvMC

# VIA cle266 support
CONFIG += using_viahwslice
DEFINES += USING_VIASLICE
EXTRA_LIBS += -lddmpeg

# DirectFB support
#CONFIG += using_directfb
#EXTRA_LIBS += `directfb-config --libs`
#QMAKE_CXXFLAGS += `directfb-config --cflags`

# Windows support
#CONFIG += win32
#DEFINES += _WIN32

# DirectX support
#CONFIG += using_directx
#DEFINES += USING_DIRECTX

# OpenGL support for vertical retrace sync
#DEFINES += USING_OPENGL_VSYNC
#EXTRA_LIBS += -lGL -lGLU

******************************************************************************
/etc/modules.conf
******************************************************************************
### This file is automatically generated by modules-update
#
# Please do not edit this file directly. If you want to change or add
# anything please take a look at the files in /etc/modules.d and read
# the manpage for modules-update.
#
### modules-update: start processing /etc/modules.d/aliases
# Aliases to tell insmod/modprobe which modules to use 

# Uncomment the network protocols you don't want loaded:
# alias net-pf-1 off            # Unix
# alias net-pf-2 off            # IPv4
# alias net-pf-3 off            # Amateur Radio AX.25
# alias net-pf-4 off            # IPX
# alias net-pf-5 off            # DDP / appletalk
# alias net-pf-6 off            # Amateur Radio NET/ROM
# alias net-pf-9 off            # X.25
# alias net-pf-10 off           # IPv6
# alias net-pf-11 off           # ROSE / Amateur Radio X.25 PLP
# alias net-pf-19 off           # Acorn Econet

alias char-major-10-175 agpgart
alias char-major-10-200 tun
alias char-major-81     bttv
alias char-major-108    ppp_generic
alias /dev/ppp          ppp_generic
alias tty-ldisc-3       ppp_async
alias tty-ldisc-14      ppp_synctty
alias ppp-compress-21   bsd_comp
alias ppp-compress-24   ppp_deflate
alias ppp-compress-26   ppp_deflate

# Crypto modules (see http://www.kerneli.org/)
alias loop-xfer-gen-0   loop_gen
alias loop-xfer-3       loop_fish2
alias loop-xfer-gen-10  loop_gen
alias cipher-2          des
alias cipher-3          fish2
alias cipher-4          blowfish
alias cipher-6          idea
alias cipher-7          serp6f
alias cipher-8          mars6
alias cipher-11         rc62
alias cipher-15         dfc2
alias cipher-16         rijndael
alias cipher-17         rc5

# Support for i2c and lm_sensors
alias char-major-89    i2c-dev

# Old nvidia support ...
alias char-major-195 NVdriver 
alias /dev/nvidiactl char-major-195 

### modules-update: end processing /etc/modules.d/aliases

### modules-update: start processing /etc/modules.d/alsa
# Alsa 0.9.X kernel modules' configuration file.
# $Header: /home/cvsroot/gentoo-x86/media-sound/alsa-utils/files/alsa-modules.conf-rc,v 1.1 2003/08/05 21:07:55 johnm Exp $

# ALSA portion
alias char-major-116 snd
alias snd-card-0 snd-via82xx
options snd-via82xx dxs_support=3

# OSS/Free portion
alias char-major-14 soundcore

##
## IMPORTANT:
## You need to customise this section for your specific sound card(s)
## and then run `update-modules' command.
## Read alsa-driver's INSTALL file in /usr/share/doc for more info.
##
##  ALSA portion
## alias snd-card-0 snd-interwave
## alias snd-card-1 snd-ens1371
##  OSS/Free portion
alias sound-slot-0 snd-card-0
## alias sound-slot-1 snd-card-1
##

# OSS/Free portion - card #1
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
##  OSS/Free portion - card #2
## alias sound-service-1-0 snd-mixer-oss
## alias sound-service-1-3 snd-pcm-oss
## alias sound-service-1-12 snd-pcm-oss

alias /dev/mixer snd-mixer-oss
alias /dev/dsp snd-pcm-oss
alias /dev/midi snd-seq-oss

# Set this to the correct number of cards.
options snd cards_limit=1
options snd major=116 cards_limit=1 device_mode=0666
options snd-via82xx index=0 dxs_support=3

### modules-update: end processing /etc/modules.d/alsa

### modules-update: start processing /etc/modules.d/i386
alias parport_lowlevel parport_pc
alias char-major-10-144 nvram
alias binfmt-0064 binfmt_aout
alias char-major-10-135 rtc

### modules-update: end processing /etc/modules.d/i386

### modules-update: start processing /etc/modules.d/ivtv
alias char-major-81 videodev
# alias char-major-81-0 ivtv
alias char-major-81-3 ivtv
alias char-major-61 lirc_serial
options lirc_serial irq=4 io=0x3f8
options ivtv ivtv_debug=0
options tuner type=2 # type=2 (NTSC) | type=5 (PAL)
options msp3400 once=1 simple=1
add below ivtv msp3400 saa7115 tuner i2c-algo-bit

### modules-update: end processing /etc/modules.d/ivtv

### modules-update: start processing /etc/modules.d/ivtv.orig

alias char-major-61 lirc_i2c
add above ivtv lirc_dev lirc_i2c

### modules-update: end processing /etc/modules.d/ivtv.orig

### modules-update: start processing /etc/modules.d/nvidia
# Nvidia drivers support
alias char-major-195 nvidia
alias /dev/nvidiactl char-major-195

# To tweak the driver the following options can be used, note that
# you should be careful, as it could cause instability!!
#
#   To enable Side Band Adressing:  NVreg_EnableAGPSBA=1
#
#   To enable Fast Writes: NVreg_EnableAGPFW=1
#
# To enable both for instance, uncomment following line:
#
#options nvidia NVreg_EnableAGPSBA=1 NVreg_EnableAGPFW=1


### modules-update: end processing /etc/modules.d/nvidia

### modules-update: start processing /etc/modules.d/svgalib
probeall  /dev/svga  svgalib_helper

### modules-update: end processing /etc/modules.d/svgalib

### modules-update: start processing /etc/modules.d/viafb
options viafb TVon=1 TVoverscan=1 TVtype=1 refresh=60 bpp=32 mode=720x480

### modules-update: end processing /etc/modules.d/viafb



More information about the mythtv-users mailing list