Opened 14 years ago

Closed 14 years ago

#7735 closed defect (wontfix)

Backend crashed once due to dvb-t tuning failure

Reported by: Marc Randolph <mrand@…> Owned by: Isaac Richards
Priority: trivial Milestone: unknown
Component: MythTV - General Version: 0.22-fixes
Severity: low Keywords:
Cc: Ticket locked: no

Description

Forwarding upstream:

MythTV Version : 22957
MythTV Branch : branches/release-0-22-fixes
Network Protocol : 50
Library API : 0.22.20091023-1
QT Version : 4.5.0
Options compiled in:
 linux profile using_oss using_alsa using_pulse using_jack using_backend using_dvb using_firewire using_frontend using_glx_proc_addr_arb using_hdhomerun using_hdpvr using_iptv using_ivtv using_joystick_menu using_libfftw3 using_lirc using_mheg using_opengl_video using_opengl_vsync using_qtwebkit using_v4l using_x11 using_xrandr using_xv using_xvmc using_xvmc_vld using_xvmcw using_bindings_perl using_bindings_python using_opengl using_vdpau using_ffmpeg_threads using_libavc_5_3 using_live using_mheg

Most useful parts of the backtrace:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb0afcb90 (LWP 4057)]
BackendQueryDiskSpace (strlist=@0xb0afb0a8, encoderList=0x81b70b4, consolidated=false, allHosts=true) at /usr/include/qt4/QtCore/qstring.h:711
711	inline QString::QString(const QString &other) : d(other.d)
(gdb) backtrace full
#0  BackendQueryDiskSpace (strlist=@0xb0afb0a8, encoderList=0x81b70b4, consolidated=false, allHosts=true) at /usr/include/qt4/QtCore/qstring.h:711
	backendsCounted = {{d = 0x81b6e40, e = 0x81b6e40}}
	encoderHost = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x81b6de0, static codecForCStrings = 0x0}
	allHostList = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x8999268, static codecForCStrings = 0x0}
	totalKB = 312437568
	usedKB = 240682276
	foundDirs = {{d = 0x89f9098, e = 0x89f9098}}
	driveKey = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x81b6de0, static codecForCStrings = 0x0}
	localStr = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x88ddf48, static codecForCStrings = 0x0}
	statbuf = {f_type = 1481003842, f_bsize = 4096, f_blocks = 78109392, f_bfree = 17938823, f_bavail = 17938823, f_files = 287022832, f_ffree = 287022388, f_fsid = {__val = {2081, 0}}, f_namelen = 255, f_frsize = 4096, f_spare = {0, 0, 0, 0, 0}}
	groups = {<QList<QString>> = {{p = {static shared_null = {ref = {_q_value = 3548}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0x89a6408}, d = 0x89a6408}}, <No data fields>}
	specialGroups = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x8928400, static codecForCStrings = 0x0}
	sql = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x89281a8, static codecForCStrings = 0x0}
	query = {<QSqlQuery> = {d = 0x8857780}, static prepareLock = {d = 0x879d9a8}, m_db = 0x87d69b0, m_isConnected = true, m_returnConnection = true, m_last_prepared_query = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x89281a8, static codecForCStrings = 0x0}}
	fsInfo = {hostname = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x5, static codecForCStrings = 0x0}, directory = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x8969800, static codecForCStrings = 0x0}, isLocal = 64, fsID = 5, dirID = 142675016, blocksize = -1257373708, totalSpaceKB = 35064113004624, usedSpaceKB = -5404519914399617768, freeSpaceKB = -5400359933557473292, weight = 144975960}
	fsInfos = {<std::_Vector_base<FileSystemInfo, std::allocator<FileSystemInfo> >> = {_M_impl = {<std::allocator<FileSystemInfo>> = {<__gnu_cxx::new_allocator<FileSystemInfo>> = {<No data fields>}, <No data fields>}, _M_start = 0xb0afadd8, _M_finish = 0xb359cfc9, _M_end_of_storage = 0x88055f0}}, <No data fields>}
	it = {i = 0xb50e1140}
	maxWriteFiveSec = 143666800
#1  0x0814b886 in GetFilesystemInfos (tvList=0x81b70b4, fsInfos=@0xb0afb2cc) at backendutil.cpp:279
	strlist = {<QList<QString>> = {{p = {static shared_null = {ref = {_q_value = 3548}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0x89d0ad0}, d = 0x89d0ad0}}, <No data fields>}
	fsInfo = {hostname = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x81b6de0, static codecForCStrings = 0x0}, directory = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x81b6de0, static codecForCStrings = 0x0}, isLocal = 192, fsID = -1258228680, dirID = -1330663248, blocksize = -1330663300, totalSpaceKB = 502, usedSpaceKB = 104339675693, freeSpaceKB = -5715155355487436800, weight = -1330663432}
	it = {i = 0xf}
	maxWriteFiveSec = 143666800
#2  0x080fd9d3 in Scheduler::FillDirectoryInfoCache (this=0x8837400, force=false) at scheduler.cpp:4173
	fsInfos = {<std::_Vector_base<FileSystemInfo, std::allocator<FileSystemInfo> >> = {_M_impl = {<std::allocator<FileSystemInfo>> = {<__gnu_cxx::new_allocator<FileSystemInfo>> = {<No data fields>}, <No data fields>}, _M_start = 0x0, _M_finish = 0x0, _M_end_of_storage = 0x0}}, <No data fields>}
	fsMap = {{d = 0xb50c55a8, e = 0xb50c55a8}}
#3  0x08111813 in Scheduler::FillRecordingDir (this=0x8837400, pginfo=0xa8777508, reclist=@0x8837444) at scheduler.cpp:3762
	fsID = 0
	query = {<QSqlQuery> = {d = 0x899b418}, static prepareLock = {d = 0x879d9a8}, m_db = 0x87cec78, m_isConnected = true, m_returnConnection = true, m_last_prepared_query = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x81b6de0, static codecForCStrings = 0x0}}
	dirKey = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x81b6de0, static codecForCStrings = 0x0}
	strlist = {<QList<QString>> = {{p = {static shared_null = {ref = {_q_value = 3548}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0x81b7084}, d = 0x81b7084}}, <No data fields>}
	thispg = (class RecordingInfo *) 0x100001d
	mysgroup = {<ConfigurationWizard> = {<ConfigurationDialog> = {<Storage> = {_vptr.Storage = 0x8186508}, cfgChildren = {<std::_Vector_base<Configurable*, std::allocator<Configurable*> >> = {_M_impl = {<std::allocator<Configurable*>> = {<__gnu_cxx::new_allocator<Configurable*>> = {<No data fields>}, <No data fields>}, _M_start = 0x0, _M_finish = 0x0, _M_end_of_storage = 0x0}}, <No data fields>}, childwidget = {<std::_Vector_base<QWidget*, std::allocator<QWidget*> >> = {_M_impl = {<std::allocator<QWidget*>> = {<__gnu_cxx::new_allocator<QWidget*>> = {<No data fields>}, <No data fields>}, _M_start = 0x0, _M_finish = 0x0, _M_end_of_storage = 0x0}}, <No data fields>}, dialog = 0x0, cfgGrp = 0x895e6b8}, <No data fields>}, static kDefaultStorageDir = 0xb6936157 "/var/lib/mythtv/recordings", static kSpecialGroups = {<QList<QString>> = {{p = {static shared_null = {ref = {_q_value = 3548}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0x87a1238}, d = 0x87a1238}}, <No data fields>}, m_groupname = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x894fbb8, static codecForCStrings = 0x0}, m_hostname = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x89eb990, static codecForCStrings = 0x0}, m_allowFallback = true, m_dirlist = {<QList<QString>> = {{p = {static shared_null = {ref = {_q_value = 3548}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0x8a91090}, d = 0x8a91090}}, <No data fields>}}
	dirlist = {<QList<QString>> = {{p = {static shared_null = {ref = {_q_value = 3548}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0x88d1608}, d = 0x88d1608}}, <No data fields>}
	recsCounted = {<QList<QString>> = {{p = {static shared_null = {ref = {_q_value = 3548}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0x81b7084}, d = 0x81b7084}}, <No data fields>}
	fsInfoList = {<std::_List_base<FileSystemInfo*, std::allocator<FileSystemInfo*> >> = {_M_impl = {<std::allocator<std::_List_node<FileSystemInfo*> >> = {<__gnu_cxx::new_allocator<std::_List_node<FileSystemInfo*> >> = {<No data fields>}, <No data fields>}, _M_node = {_M_next = 0xb0afb700, _M_prev = 0xb0afb700}}}, <No data fields>}
	weightPerRecording = 10
	weightPerPlayback = 5
	weightPerCommFlag = 5
	weightPerTranscode = 5
	storageScheduler = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x89468c8, static codecForCStrings = 0x0}
	localStartingWeight = -19
	remoteStartingWeight = 0
	simulateAutoExpire = false
#4  0x081315ad in Scheduler::RunScheduler (this=0x8837400) at scheduler.cpp:1893
	lockit = {{mtx = 0x8837661, val = 142833249}}
	msg = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x81b6de0, static codecForCStrings = 0x0}
	fsID = -1
	lockit = {{mtx = 0x0, val = 0}}
	subtitle = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x88ddf48, static codecForCStrings = 0x0}
	details = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x81b6de0, static codecForCStrings = 0x0}
	is_rec = false
	statuschanged = false
	prerollseconds = 0
	wakeThreshold = 240
	nexttv = (EncoderLink *) 0xb0afbfa4
	nextRecording = (class RecordingInfo *) 0x89aae70
	nextrectime = {d = 0xa87b6910}
	schedid = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0xb23bbdd0, static codecForCStrings = 0x0}
	curtime = {d = 0x88df140}
	lastupdate = {d = 0xa8676de8}
	lastSleepCheck = {d = 0x87d6b80}
	blockShutdown = true
	idleSince = {d = 0x89606f8}
	idleTimeoutSecs = 0
	idleWaitForRecordingTime = 15
	firstRun = false
	fillstart = {tv_sec = 1260460566, tv_usec = 498292}
	fillend = {tv_sec = 1260460568, tv_usec = 208518}
	matchTime = 0.0325619988
	placeTime = 0
	query = {<QSqlQuery> = {d = 0x8809568}, static prepareLock = {d = 0x879d9a8}, m_db = 0x8809718, m_isConnected = true, m_returnConnection = false, m_last_prepared_query = {static null = {<No data fields>}, static shared_null = {ref = {_q_value = 2927}, alloc = 0, size = 0, data = 0x81b6df2, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, static shared_empty = {ref = {_q_value = 1292}, alloc = 0, size = 0, data = 0xb5448a6e, clean = 0, simpletext = 0, righttoleft = 0, asciiCache = 0, capacity = 0, reserved = 0, array = {0}}, d = 0x883c828, static codecForCStrings = 0x0}}
#5  0x081385d1 in Scheduler::SchedulerThread (param=0x8837400) at scheduler.cpp:2461
No locals.
#6  0xb60b44ff in start_thread (arg=0xb0afcb90) at pthread_create.c:297
	__res = <value optimized out>
	__ignore1 = <value optimized out>
	__ignore2 = <value optimized out>
	pd = (struct pthread *) 0xb0afcb90
	now = <value optimized out>
	unwind_buf = {cancel_jmp_buf = {{jmp_buf = {-1240711180, 0, 0, -1330658200, -1141308960, -218652691}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
	not_first_call = <value optimized out>
	robust = <value optimized out>
#7  0xb506549e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130
No locals.
(gdb) info registers
eax            0x0	0
ecx            0x81b70b4	136016052
edx            0x8902e70	143666800
ebx            0xb0afae54	-1330663852
esp            0xb0afabf0	0xb0afabf0
ebp            0x8902e78	0x8902e78
esi            0x81b70b4	136016052
edi            0xb0afaecc	-1330663732
eip            0x814a353	0x814a353 <BackendQueryDiskSpace(QStringList&, QMap<int, EncoderLink*>*, bool, bool)+6371>
eflags         0x210202	[ IF RF ID ]
cs             0x73	115
ss             0x7b	123
ds             0x7b	123
es             0x7b	123
fs             0x0	0
gs             0x33	51
(gdb) x/16i $pc
0x814a353 <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6371>:	mov    0x8(%eax),%edx
0x814a356 <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6374>:	add    $0x8,%eax
0x814a359 <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6377>:	cmp    %eax,%ebx
0x814a35b <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6379>:	mov    %edx,0x264(%esp)
0x814a362 <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6386>:	je     0x814a6b0 <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+7232>
0x814a368 <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6392>:	mov    0x264(%esp),%eax
0x814a36f <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6399>:	lock incl (%eax)
0x814a372 <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6402>:	setne  %dl
0x814a375 <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6405>:	mov    0x2c(%esp),%ecx
0x814a379 <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6409>:	mov    %ebx,0x4(%esp)
0x814a37d <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6413>:	mov    %ecx,(%esp)
0x814a380 <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6416>:	call   0x8056e1c <_ZN7QStringaSERKS_@plt>
0x814a385 <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6421>:	mov    %ebx,(%esp)
0x814a388 <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6424>:	call   0x806eca0 <~QString>
0x814a38d <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6429>:	mov    0x50(%esp),%esi
0x814a391 <_Z21BackendQueryDiskSpaceR11QStringListP4QMapIiP11EncoderLinkEbb+6433>:	mov    0x4(%esi),%eax
(gdb)

Complete thread trace is available here: http://launchpadlibrarian.net/36690382/gdb-mythbackend.txt

Change History (5)

comment:1 Changed 14 years ago by robertm

Status: newinfoneeded_new

Marc,

Could we get some more context on this?

comment:2 Changed 14 years ago by Marc Randolph <mrand@…>

Sorry, I forgot to put a link back to the Launchpad bug. The short version is this:

  1. The cause of the crash was no tuners being defined. I don't know if that is resolved in 0.23 or not, but there were more than one report of this causing an actual crash (which I assume is less than ideal from a database perspective).
  1. The cause for the tuners not being defined is slightly less clear. One person had purposely removed the tuner via setup because they removed the hardware. But the person that opened this ticket had not gone into mythtv-setup for a Really Long Time (tm). He mentions a different backend crash problem, so perhaps that somehow corrupted his database?

The users backend log had the following in it:

2009-12-10 16:01:28.607 DVBChan(25:/dev/dvb/adapter0/frontend0)
Warning: Opening DVB frontend device failed.
   eno: Device or resource busy (16)
2009-12-10 16:01:28.659 DVBChan(25:/dev/dvb/adapter0/frontend0)
Warning: Opening DVB frontend device failed.
   eno: Device or resource busy (16)
2009-12-10 16:01:28.711 DVBChan(25:/dev/dvb/adapter0/frontend0)
Warning: Opening DVB frontend device failed.
   eno: Device or resource busy (16)
2009-12-10 16:01:28.713 DVBChan(25:/dev/dvb/adapter0/frontend0) Error:
Failed to open DVB frontend device due to fatal error or too many
attempts.
2009-12-10 16:01:28.714 MythBackend, Error: No valid capture cards are
defined in the database.
   Perhaps you should re-read the installation instructions?
2009-12-10 16:01:28.719 New DB connection, total: 3
2009-12-10 16:01:28.731 Connected to database 'mythconverg' at host: mythtv
2009-12-10 16:01:28.748 MediaServer::HttpServer Create Error
2009-12-10 16:01:28.757 Enabled verbose msgs: important general
2009-12-10 16:01:28.764 AutoExpire: CalcParams(): Max required Free
Space: 0.0 GB w/freq: 15 min
2009-12-10 16:01:28.769 Failed to bind port 6543. Exiting.
2009-12-10 16:01:28.771 Backend exiting, MainServer initialization error.
Error in my_thread_global_end(): 1 threads didn't exit

(from https://bugs.launchpad.net/mythbuntu/+bug/495429)

comment:3 Changed 14 years ago by robertm

Priority: minortrivial
Severity: mediumlow
Status: infoneeded_newnew

OK. There's still a bug here in that we should check that the tuners are present before trying to run the scheduler on them, but this is mostly a configuration issue.

comment:4 Changed 14 years ago by robertm

(the second log appears to indicate he had another instance of the backend running)

comment:5 Changed 14 years ago by robertm

Resolution: wontfix
Status: newclosed
Note: See TracTickets for help on using tickets.