[mythtv] Re: mythbackend crashes with segmentation fault after the specific sequences of events.

Mudit Wahal mwahal at gmail.com
Thu Jun 16 22:43:30 UTC 2005


Output of "thread apply all bt full"
==== caution long email =======

(gdb) 
(gdb) thread apply all bt full

Thread 17 (Thread -1349403728 (LWP 7941)):
#0  0xb6734523 in poll () from /lib/tls/libc.so.6
No symbol table info available.
#1  0xb7d05b0a in DVBRecorder::StartRecording (this=0x813cf70)
    at dvbrecorder.cpp:580
        ret = 1000
        cardnum = 0
        polls = {
  fd = 28, 
  events = 1, 
  revents = 0
}
        __result = -4
        __result = -4
#2  0xb7c8f01f in SpawnEncode (param=0xfffffffc) at tv_rec.cpp:48
No locals.
#3  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#4  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 16 (Thread -1341015120 (LWP 7940)):
#0  0xb670e99c in nanosleep () from /lib/tls/libc.so.6
No symbol table info available.
#1  0xb673728a in usleep () from /lib/tls/libc.so.6
No symbol table info available.
#2  0xb7ab6e6c in ThreadedFileWriter::DiskLoop (this=0x8103880)
    at RingBuffer.cpp:276
        size = 0
        written = 0
        timer = {
---Type <return> to continue, or q <return> to quit---
  ds = 56113176
}
#3  0xb7ab59fe in ThreadedFileWriter::boot_writer (wotsit=0xfffffdfc)
    at RingBuffer.cpp:120
No locals.
#4  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 13 (Thread -1330525264 (LWP 7933)):
#0  0xb670e99c in nanosleep () from /lib/tls/libc.so.6
No symbol table info available.
#1  0xb673728a in usleep () from /lib/tls/libc.so.6
No symbol table info available.
#2  0xb7ca14ac in TVRec::StopLiveTV (this=0xb631d008) at tv_rec.cpp:1787
No locals.
#3  0x0808f987 in MainServer::HandleRecorderQuery (this=0x810e9f0, 
    slist=@0xb0b1ca40, commands=@0x80c6d66, pbs=0xfffffdfc)
    at mainserver.cpp:2260
        dtmp = {
  d = {
    jd = 1
  }, 
  t = {
    ds = 2964440056
  }
}
        dtime = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
---Type <return> to continue, or q <return> to quit---
    static shared_null = 0x80de070
  }, 
  d = 0x813a248, 
  static shared_null = 0x80de070
}
        verbose_macro_tmp = {
  <> = {<No data fields>}, 
  members of std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >:
  _M_stringbuf = {
    <> = {<No data fields>}, 
    members of std::basic_stringbuf<char, std::char_traits<char>,
std::allocator<char> >:
    _M_string = {
      static npos = 4294967295, 
      _M_dataplus = {
        <std::allocator<char>> = {<No data fields>}, 
        members of std::string::_Alloc_hider: 
        _M_p = 0xb0b1c730 "`\020\b\037\004XDZt\020\b"
      }, 
      static _S_empty_rep_storage = {0, 0, 0, 0}
    }
  }
}
        recnum = 1
        iter = {
  node = 0x81060c8
}
        enc = (EncoderLink *) 0x810fd58
        command = {
  static null = {
    static null = <same as static member of an already seen type>, 
---Type <return> to continue, or q <return> to quit---
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x810afc0, 
  static shared_null = 0x80de070
}
        retlist = {
  <QValueList<QString>> = {
    sh = 0x813a9f8
  }, <No data fields>}
        __result = -516
        __result = -516
        __result = -516
#4  0x08070881 in MainServer::ProcessRequestWork (this=0x810e9f0, 
    sock=0x8113ca8) at mainserver.cpp:350
        dtmp = {
  d = {
    jd = 0
  }, 
  t = {
    ds = 0
  }
}
        dtime = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x810f020, 
  static shared_null = 0x80de070
}
---Type <return> to continue, or q <return> to quit---
        verbose_macro_tmp = {
  <> = {<No data fields>}, 
  members of std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >:
  _M_stringbuf = {
    <> = {<No data fields>}, 
    members of std::basic_stringbuf<char, std::char_traits<char>,
std::allocator<char> >:
    _M_string = {
      static npos = 4294967295, 
      _M_dataplus = {
        <std::allocator<char>> = {<No data fields>}, 
        members of std::string::_Alloc_hider: 
        _M_p = 0x0
      }, 
      static _S_empty_rep_storage = {0, 0, 0, 0}
    }
  }
}
        listline = {
  <QValueList<QString>> = {
    sh = 0x8139608
  }, <No data fields>}
        line = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x810ac00, 
  static shared_null = 0x80de070
}
---Type <return> to continue, or q <return> to quit---
        tokens = {
  <QValueList<QString>> = {
    sh = 0x8113ca8
  }, <No data fields>}
        command = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x8113d70, 
  static shared_null = 0x80de070
}
        pbs = (PlaybackSock *) 0x8104990
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
#5  0x080a2c5c in ProcessRequestThread::run (this=0x810f408)
---Type <return> to continue, or q <return> to quit---
    at mainserver.cpp:202
No locals.
#6  0xb6b722ca in QThreadInstance::start () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#7  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#8  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 12 (Thread -1322136656 (LWP 7932)):
#0  0xb6887295 in pthread_cond_wait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
No symbol table info available.
#1  0xb6e77458 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2  0x080a2bed in ProcessRequestThread::run (this=0x810f2b0)
    at mainserver.cpp:69
No locals.
#3  0xb6b722ca in QThreadInstance::start () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#4  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 11 (Thread -1313748048 (LWP 7931)):
#0  0xb6887295 in pthread_cond_wait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
No symbol table info available.
#1  0xb6e77458 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2  0x080a2bed in ProcessRequestThread::run (this=0x810f080)
---Type <return> to continue, or q <return> to quit---
    at mainserver.cpp:69
No locals.
#3  0xb6b722ca in QThreadInstance::start () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#4  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 10 (Thread -1305359440 (LWP 7930)):
#0  0xb6887295 in pthread_cond_wait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
No symbol table info available.
#1  0xb6e77458 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2  0x080a2bed in ProcessRequestThread::run (this=0x810ee10)
    at mainserver.cpp:69
No locals.
#3  0xb6b722ca in QThreadInstance::start () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#4  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 9 (Thread -1296970832 (LWP 7929)):
#0  0xb6887295 in pthread_cond_wait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
No symbol table info available.
#1  0xb6e77458 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2  0x080a2bed in ProcessRequestThread::run (this=0x810ea88)
---Type <return> to continue, or q <return> to quit---
    at mainserver.cpp:69
No locals.
#3  0xb6b722ca in QThreadInstance::start () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#4  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 8 (Thread -1288582224 (LWP 7928)):
#0  0xb670e99c in nanosleep () from /lib/tls/libc.so.6
No symbol table info available.
#1  0xb670e7af in sleep () from /lib/tls/libc.so.6
No symbol table info available.
#2  0xb7c3accc in JobQueue::ProcessQueue (this=0x810e898) at jobqueue.cpp:469
        dtmp = {
  d = {
    jd = 1
  }, 
  t = {
    ds = 0
  }
}
        dtime = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x0, 
  static shared_null = 0x80de070
}
---Type <return> to continue, or q <return> to quit---
        verbose_macro_tmp = {
  <> = {<No data fields>}, 
  members of std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >:
  _M_stringbuf = {
    <> = {<No data fields>}, 
    members of std::basic_stringbuf<char, std::char_traits<char>,
std::allocator<char> >:
    _M_string = {
      static npos = 4294967295, 
      _M_dataplus = {
        <std::allocator<char>> = {<No data fields>}, 
        members of std::string::_Alloc_hider: 
        _M_p = 0x0
      }, 
      static _S_empty_rep_storage = {0, 0, 0, 0}
    }
  }
}
        key = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0xb7fe9d5c, 
  static shared_null = 0x80de070
}
        x = 0
        chanid = {
  static null = {
    static null = <same as static member of an already seen type>, 
---Type <return> to continue, or q <return> to quit---
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x80de070, 
  static shared_null = 0x80de070
}
        starttime = {
  d = {
    jd = 0
  }, 
  t = {
    ds = 0
  }
}
        startts = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x80de070, 
  static shared_null = 0x80de070
}
        type = -1288583464
        id = 1
        cmds = -1233553344
        status = 135439968
        hostname = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
---Type <return> to continue, or q <return> to quit---
  }, 
  d = 0x80de070, 
  static shared_null = 0x80de070
}
        sleepTime = 60
        jobStatus = {
  sh = 0x813a0e0
}
        maxJobs = 1
        queueStartTimeStr = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x810c288, 
  static shared_null = 0x80de070
}
        queueEndTimeStr = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x8128848, 
  static shared_null = 0x80de070
}
        queueStartTime = 18
        queueEndTime = 135439968
        curQTime = {
  ds = 0
}
---Type <return> to continue, or q <return> to quit---
        curTime = -516
        message = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x80de070, 
  static shared_null = 0x80de070
}
        tmpStr = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x80de070, 
  static shared_null = 0x80de070
}
        jobs = {
  sh = 0x812a660
}
        atMax = false
        inTimeWindow = 16
        startedJobAlready = 231
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
---Type <return> to continue, or q <return> to quit---
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
        __result = -516
#3  0xb7c396be in JobQueue::RunQueueProcesser (this=0x810e898)
    at jobqueue.cpp:135
No locals.
#4  0xb7c396ee in JobQueue::QueueProcesserThread (param=0xfffffdfc)
    at jobqueue.cpp:141
No locals.
#5  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#6  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 7 (Thread -1280193616 (LWP 7927)):
#0  0xb670e99c in nanosleep () from /lib/tls/libc.so.6
No symbol table info available.
#1  0xb670e7af in sleep () from /lib/tls/libc.so.6
No symbol table info available.
#2  0x080bfe30 in HouseKeeper::RunHouseKeeping (this=0x810e5c0)
    at housekeeper.cpp:175
        period = 1
        maxhr = 24
        minhr = 20
---Type <return> to continue, or q <return> to quit---
        dbTag = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x813a078, 
  static shared_null = 0x80de070
}
        __result = -516
        __result = -516
        __result = -516
#3  0x080c1daf in HouseKeeper::doHouseKeepingThread (param=0xfffffdfc)
    at housekeeper.cpp:236
No locals.
#4  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 6 (Thread -1271805008 (LWP 7926)):
#0  0xb670e99c in nanosleep () from /lib/tls/libc.so.6
No symbol table info available.
#1  0xb670e7af in sleep () from /lib/tls/libc.so.6
No symbol table info available.
#2  0x08053e3b in AutoExpire::RunExpirer (this=0x810e5d0) at autoexpire.cpp:158
        statbuf = {
  f_type = 61267, 
  f_bsize = 4096, 
  f_blocks = 41172667, 
  f_bfree = 6906517, 
  f_bavail = 6906517, 
---Type <return> to continue, or q <return> to quit---
  f_files = 40224, 
  f_ffree = 19395, 
  f_fsid = {
    __val = {0, 0}
  }, 
  f_namelen = 255, 
  f_frsize = 4096, 
  f_spare = {0, 0, 0, 0, 0}
}
        freespace = -1271805632
        minFree = 0
        recordfileprefix = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x810c238, 
  static shared_null = 0x80de070
}
        __result = -516
        __result = -516
        __result = -516
        __result = -516
#3  0x08056ebf in AutoExpire::ExpirerThread (param=0xfffffdfc)
    at autoexpire.cpp:200
No locals.
#4  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

---Type <return> to continue, or q <return> to quit---
Thread 5 (Thread -1263416400 (LWP 7925)):
#0  0xb6887440 in pthread_cond_timedwait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
No symbol table info available.
#1  0xb6e77407 in QWaitCondition::wait () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#2  0x080ad109 in Scheduler::RunScheduler (this=0x80fdf88) at scheduler.cpp:878
        statuschanged = false
        recIter = {
  <std::_List_iterator_base> = {
    _M_node = 0x80f7030
  }, <No data fields>}
        prerollseconds = 0
        secsleft = 0
        nexttv = (EncoderLink *) 0x0
        nextRecording = (ProgramInfo *) 0x81373f8
        nextrectime = {
  d = {
    jd = 2453538
  }, 
  t = {
    ds = 57600000
  }
}
        curtime = {
  d = {
    jd = 2453538
  }, 
  t = {
    ds = 56114946
  }
}
---Type <return> to continue, or q <return> to quit---
        recordfileprefix = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x810e5a8, 
  static shared_null = 0x80de070
}
        startIter = {
  <std::_List_iterator_base> = {
    _M_node = 0x80f7030
  }, <No data fields>}
        blockShutdown = true
        idleSince = {
  d = {
    jd = 0
  }, 
  t = {
    ds = 0
  }
}
        idleTimeoutSecs = 0
        idleWaitForRecordingTime = 15
        firstRun = false
        fillstart = {
  tv_sec = 1118961296, 
  tv_usec = 849034
}
        fillend = {
  tv_sec = 1118961296, 
  tv_usec = 900464
---Type <return> to continue, or q <return> to quit---
}
        matchTime = 0.0331749991
        placeTime = 0
        __result = -4
        __result = -4
        __result = -4
        __result = -4
        __result = -4
        __result = -4
        __result = -4
        __result = -4
#3  0x080b259f in Scheduler::SchedulerThread (param=0xfffffffc)
    at scheduler.cpp:1293
No locals.
#4  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 4 (Thread -1255027792 (LWP 7923)):
#0  0xb6885ce3 in pthread_join () from /lib/tls/libpthread.so.0
No symbol table info available.
#1  0xb7c97691 in TVRec::TeardownRecorder (this=0xb631d008, killFile=true)
    at tv_rec.cpp:760
        message = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x8113860, 
  static shared_null = 0x80de070
---Type <return> to continue, or q <return> to quit---
}
        me = {
  <QCustomEvent> = {
    <> = {<No data fields>}, 
    members of QCustomEvent: 
    d = 0x0
  }, 
  members of MythEvent: 
  message = {
    static null = {
      static null = <same as static member of an already seen type>, 
      d = 0x80de070, 
      static shared_null = 0x80de070
    }, 
    d = 0x8113860, 
    static shared_null = 0x80de070
  }, 
  extradata = {
    <QValueList<QString>> = {
      sh = 0x813aae8
    }, <No data fields>}
}
        blank_frame_map = {
  sh = 0x8105178
}
        oldProfileName = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x810c2a0, 
---Type <return> to continue, or q <return> to quit---
#3  0xb7c98f88 in TVRec::RunTV (this=0xb631d008) at tv_rec.cpp:916
        dtmp = {
  d = {
    jd = 0
  }, 
  t = {
    ds = 0
  }
}
        dtime = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x0, 
  static shared_null = 0x80de070
}
        verbose_macro_tmp = {
  <> = {<No data fields>}, 
  members of std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >:
  _M_stringbuf = {
    <> = {<No data fields>}, 
    members of std::basic_stringbuf<char, std::char_traits<char>,
std::allocator<char> >:
    _M_string = {
      static npos = 4294967295, 
      _M_dataplus = {
        <std::allocator<char>> = {<No data fields>}, 
        members of std::string::_Alloc_hider: 
        _M_p = 0xb7ff1def
"\205u\t\203\004\213\006\205u\213E\205\017\204\2---Type <return>
to continue, or q <return> to quit---
16\001"
      }, 
      static _S_empty_rep_storage = {0, 0, 0, 0}
    }
  }
}
        __result = -4
        __result = -4
#4  0xb7c9821e in TVRec::EventThread (param=0xfffffffc) at tv_rec.cpp:900
No locals.
#5  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#6  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 3 (Thread -1246639184 (LWP 7920)):
#0  0xb670e99c in nanosleep () from /lib/tls/libc.so.6
No symbol table info available.
#1  0xb673728a in usleep () from /lib/tls/libc.so.6
No symbol table info available.
#2  0xb7daa8f0 in SIScan::StartScanner (this=0x810a638) at siscan.cpp:121
        __result = -516
        __result = -516
        __result = -516
#3  0xb7c8f04e in SpawnScanner (param=0xfffffdfc) at tv_rec.cpp:56
No locals.
#4  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 2 (Thread -1238250576 (LWP 7919)):
---Type <return> to continue, or q <return> to quit---
#0  0xb6734523 in poll () from /lib/tls/libc.so.6
No symbol table info available.
#1  0xb7d711c2 in DVBSIParser::StartSectionReader (this=0x81068b0)
    at dvbsiparser.cpp:241
        ret = -4
        buffer =
"\002Q\000\003\000\0001\033\005\004GA94\020\006\002\000\b\001eng\001\000\000\000\001\0021\b\002\003\"D_\006\001\002\2014\027\005\004AC-3\201\006\b8\005\000\000\000\n\004eng\000\006\001\001\t\002\000\001\001\001\000\000\003\000\001\002\002\000\000\003\000\003\001\000\000\003\000\001\003\003\000\000\0034\000\000\030rock.
Rock group Sum 41 play members of the flock. Gene Simmon"...
        processed = false
        __result = -4
        __result = -4
        __result = -4
        __result = -4
#2  0xb7d10a3e in DVBChannel::SpawnSectionReader (param=0xfffffffc)
    at dvbchannel.cpp:93
No locals.
#3  0xb6884b63 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#4  0xb673d18a in clone () from /lib/tls/libc.so.6
No symbol table info available.

Thread 1 (Thread -1236113824 (LWP 7916)):
#0  0xb6e769e1 in QMutex::lock () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#1  0x080757a7 in MainServer::customEvent (this=0x810e9f0, e=0x812a720)
    at server.h:22
        pbs = (PlaybackSock *) 0x812a720
        sock = (RefSocket *) 0x80f2588
        sendGlobal = false
---Type <return> to continue, or q <return> to quit---
        sentSet = {
  <QGList> = {
    <> = {<No data fields>}, 
    members of QGList: 
    firstNode = 0x81167e0, 
    lastNode = 0x81167e0, 
    curNode = 0x81167e0, 
    curIndex = 0, 
    numNodes = 1, 
    iterators = 0x0
  }, <No data fields>}
        iter = {
  <std::iterator<std::random_access_iterator_tag, PlaybackSock*, int,
PlaybackSock**, PlaybackSock*&>> = {<No data fields>},
  members of __gnu_cxx::__normal_iterator<PlaybackSock**,
std::vector<PlaybackSock*, std::allocator<PlaybackSock*> > >:
  _M_current = 0x80f7290
}
        broadcast = {
  <QValueList<QString>> = {
    sh = 0x810f228
  }, <No data fields>}
#2  0xb6bd8dbc in QObject::event () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#3  0xb6b7ebff in QApplication::internalNotify () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#4  0xb6b7e1fe in QApplication::notify () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#5  0xb6b7f9f6 in QApplication::sendPostedEvents () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#6  0xb6b7f876 in QApplication::sendPostedEvents () from /usr/lib/libqt-mt.so.3
No symbol table info available.
---Type <return> to continue, or q <return> to quit---
#7  0xb6b2789a in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#8  0xb6b90f58 in QEventLoop::enterLoop () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#9  0xb6b90e08 in QEventLoop::exec () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#10 0xb6b7ee51 in QApplication::exec () from /usr/lib/libqt-mt.so.3
No symbol table info available.
#11 0x0806a159 in main (argc=1, argv=0x80de070) at main.cpp:587
        dtmp = {
  d = {
    jd = 7102829
  }, 
  t = {
    ds = 7102824
  }
}
        dtime = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x810f570, 
  static shared_null = 0x80de070
}
        verbose_macro_tmp = {
  <> = {<No data fields>}, 
  members of std::basic_ostringstream<char, std::char_traits<char>,
std::allocator<char> >:
  _M_stringbuf = {
    <> = {<No data fields>}, 
---Type <return> to continue, or q <return> to quit---
---Type <return> to continue, or q <return> to quit---
    members of std::basic_stringbuf<char, std::char_traits<char>,
std::allocator<char> >:
    _M_string = {
      static npos = 4294967295, 
      _M_dataplus = {
        <std::allocator<char>> = {<No data fields>}, 
        members of std::string::_Alloc_hider: 
        _M_p = 0x810ee8c "t"
      }, 
      static _S_empty_rep_storage = {0, 0, 0, 0}
    }
  }
}
        WOLslaveBackends = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x8102738, 
  static shared_null = 0x80de070
}
        a = <incomplete type>
        logfile = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x80f1938, 
  static shared_null = 0x80de070
}
---Type <return> to continue, or q <return> to quit---
        binname = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x80f1970, 
  static shared_null = 0x80de070
}
        verboseString = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x80f19b0, 
  static shared_null = 0x80de070
}
        daemonize = false
        printsched = false
        testsched = false
        resched = false
        nosched = false
        printexpire = false
        logfd = -1224466468
        pidfs = <incomplete type>
        port = 6543
        statusport = 6544
        myip = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
---Type <return> to continue, or q <return> to quit---
  }, 
  d = 0x80fdc28, 
  static shared_null = 0x80de070
}
        masterip = {
  static null = {
    static null = <same as static member of an already seen type>, 
    d = 0x80de070, 
    static shared_null = 0x80de070
  }, 
  d = 0x80fde28, 
  static shared_null = 0x80de070
}
        ismaster = true
        runsched = 112
        __result = 135127152
        __result = 135127152
        __result = 135127152
        __result = 135127152
(gdb) 




On 6/16/05, Mudit Wahal <mwahal at gmail.com> wrote:
> Forgot to put *this and *e values in prev. email. Hope it helps.
> 
> #0  0x00000000 in ?? ()
> #1  0xb6e769e4 in QMutex::lock () from /usr/lib/libqt-mt.so.3
> #2  0x080757a7 in MainServer::customEvent (this=0x810ea38, e=0x813a5d8)
>     at server.h:22
> 
> (gdb) f 2
> #2  0x080757a7 in MainServer::customEvent (this=0x810ea38, e=0x813a5d8)
>     at server.h:22
> 22          void Lock() { lock.lock(); }
> (gdb) p /x *this
> $8 = {
>   <> = {<No data fields>},
>   members of MainServer:
>   static metaObj = 0x810f740,
>   encoderList = 0x80dbec8,
>   mythserver = 0x810f5d8,
>   playbackList = {
>     <std::_Vector_base<PlaybackSock*, std::allocator<PlaybackSock*> >> = {
>       <std::_Vector_alloc_base<PlaybackSock*,
> std::allocator<PlaybackSock*>, true>> = {
>         _M_start = 0x80f7290,
>         _M_finish = 0x80f72a0,
>         _M_end_of_storage = 0x80f72a0
>       }, <No data fields>}, <No data fields>},
>   ringBufList = {
>     <std::_Vector_base<QSocket*, std::allocator<QSocket*> >> = {
>       <std::_Vector_alloc_base<QSocket*, std::allocator<QSocket*>, true>> = {
>         _M_start = 0x80f69c0,
>         _M_finish = 0x80f69c8,
>         _M_end_of_storage = 0x80f69c8
>       }, <No data fields>}, <No data fields>},
>   fileTransferList = {
>     <std::_Vector_base<FileTransfer*, std::allocator<FileTransfer*> >> = {
>       <std::_Vector_alloc_base<FileTransfer*,
> std::allocator<FileTransfer*>, true>> = {
>         _M_start = 0x0,
>         _M_finish = 0x0,
>         _M_end_of_storage = 0x0
>       }, <No data fields>}, <No data fields>},
>   recordfileprefix = {
>     static null = {
>       static null = <same as static member of an already seen type>,
>       d = 0x80de070,
>       static shared_null = 0x80de070
>     },
>     d = 0x810f8a0,
>     static shared_null = 0x80de070
>   },
>   statusserver = 0x8112c70,
>   masterServerReconnect = 0x67006e,
>   masterServer = 0x0,
>   ismaster = 0x1,
>   deletelock = <incomplete type>,
>   threadPoolLock = <incomplete type>,
>   threadPool = {
>     <std::_Vector_base<ProcessRequestThread*,
> std::allocator<ProcessRequestThread*> >> = {
>       <std::_Vector_alloc_base<ProcessRequestThread*,
> std::allocator<ProcessRequestThread*>, true>> = {
>         _M_start = 0x80dff08,
>         _M_finish = 0x80dff18,
>         _M_end_of_storage = 0x80dff28
>       }, <No data fields>}, <No data fields>},
>   masterBackendOverride = 0x1,
>   m_sched = 0x80fdf88,
>   readReadyLock = <incomplete type>
> ---Type <return> to continue, or q <return> to quit---
> }
> 
> (gdb) p /x *e
> $9 = {
>   <> = {<No data fields>},
>   members of QCustomEvent:
>   d = 0x32000001
> }
> (gdb)
> 
> 
> On 6/16/05, Mudit Wahal <mwahal at gmail.com> wrote:
> > Hi all,
> >
> > I'm trying to write some scripts which can change the mode to the
> > Watch Live TV and change channels up and down. When I run my script
> > first time, every thing is fine. But when I run it second time, the
> > mythbackend crashes when I send QUERY_RECORDER 1[]:[]STOP_LIVETV.
> >
> > My system is Semprom 3000+, HD3000 card. Knoppix Myth R5A15.1 release.
> >
> > I was running 0.18 release image.
> >
> > Then I build 0.18.1 released image (not cvs version) so I can run gdb.
> > I started mythbackend 0.18.1 from gdb and here is what I see in the stack trace.
> >
> > [New Thread -1349403728 (LWP 7206)]
> > [Thread -1349403728 (LWP 7206) exited]
> > [Thread -1341015120 (LWP 7205) exited]
> > [New Thread -1341015120 (LWP 7209)]
> > [New Thread -1349403728 (LWP 7210)]
> >
> > Program received signal SIGSEGV, Segmentation fault.
> > [Switching to Thread -1236113824 (LWP 7183)]
> > 0x00000000 in ?? ()
> > (gdb) where
> > #0  0x00000000 in ?? ()
> > #1  0xb6e769e4 in QMutex::lock () from /usr/lib/libqt-mt.so.3
> > #2  0x080757a7 in MainServer::customEvent (this=0x810ea38, e=0x813a5d8)
> >     at server.h:22
> > #3  0xb6bd8dbc in QObject::event () from /usr/lib/libqt-mt.so.3
> > #4  0xb6b7ebff in QApplication::internalNotify () from /usr/lib/libqt-mt.so.3
> > #5  0xb6b7e1fe in QApplication::notify () from /usr/lib/libqt-mt.so.3
> > #6  0xb6b7f9f6 in QApplication::sendPostedEvents () from /usr/lib/libqt-mt.so.3
> > #7  0xb6b7f876 in QApplication::sendPostedEvents () from /usr/lib/libqt-mt.so.3
> > #8  0xb6b2789a in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3
> > #9  0xb6b90f58 in QEventLoop::enterLoop () from /usr/lib/libqt-mt.so.3
> > #10 0xb6b90e08 in QEventLoop::exec () from /usr/lib/libqt-mt.so.3
> > #11 0xb6b7ee51 in QApplication::exec () from /usr/lib/libqt-mt.so.3
> > #12 0x0806a159 in main (argc=1, argv=0x8114420) at main.cpp:587
> >
> > ========
> > Here is my debug output from the script.
> >
> > ========= first iteration =============
> > +++ connect
> > REQUEST->req: 'MYTH_PROTO_VERSION 15'
> > REPLY LEN: 13
> > REPLY: 'ACCEPT[]:[]15'
> > REQUEST->req: 'ANN Playback mythtvbe 0'
> > REPLY LEN: 2
> > REPLY: 'OK'
> > +++ TL : recorder_get_free_recorder
> > REQUEST->req: 'GET_NEXT_FREE_RECORDER[]:[]-1'
> > REPLY LEN: 28
> > REPLY: '1[]:[]192.168.123.3[]:[]6543'
> > REQUEST->req: 'MYTH_PROTO_VERSION 15'
> > REPLY LEN: 13
> > REPLY: 'ACCEPT[]:[]15'
> > REQUEST->req: 'ANN Playback mythtvbe 0'
> > REPLY LEN: 2
> > REPLY: 'OK'
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]SETUP_RING_BUFFER[]:[]0'
> > REPLY LEN: 92
> > REPLY: 'rbuf://192.168.123.3:6543/cache/cache/ringbuf1.nuv[]:[]2[]:[]-1073741824[]:[]0[]:[]104857600'
> > +++ TL : recorder_start_stream
> > REQUEST->req: 'ANN Playback mythtvbe 0'
> > REPLY LEN: 2
> > REPLY: 'OK'
> > REQUEST->req: 'ANN RingBuffer mythtvbe 1'
> > REPLY LEN: 2
> > REPLY: 'OK'
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]SPAWN_LIVETV'
> > REPLY LEN: 2
> > REPLY: 'ok'
> > +++ TL : recorder_get_program_info
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]GET_PROGRAM_INFO'
> > REPLY LEN: 436
> > REPLY: General Hospital[]:[] []:[]Evan threatens to expose Reese's
> > lies to Sonny; Sonny takes Reese to his house for her safety; Carly
> > confronts Reese; Courtney receives discouraging news from Dr. Meadows;
> > Elizabeth makes an offer to Jax; Courtney and Jax get a surprising
> > offer of help.[]:[]Soap[]:[]2005-06-16T14:00:00[]:[]2005-06-16T15:00:00[]:[]KGODT[]:[]none[]:[]7_1[]:[]1034[]:[]SH001807[]:[]EP0018070648[]:[]
> > []:[]0[]:[]2005-06-16[]:[]0
> > Channel 7_1: General Hospital -- Evan threatens to expose Reese's lies
> > to Sonny; Sonny takes Reese to his house for her safety; Carly
> > confronts Reese; Courtney receives discouraging news from Dr. Meadows;
> > Elizabeth makes an offer to Jax; Courtney and Jax get a surprising
> > offer of help.
> > ++++ recorder_pause
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]PAUSE'
> > REPLY LEN: 2
> > REPLY: ok
> > +++++ recorder_change_channel CHANNEL_DIRECTION_UP
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]CHANGE_CHANNEL[]:[]0'
> > REPLY LEN: 2
> > REPLY: ok
> > ++++ recorder_get_program_info
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]GET_PROGRAM_INFO'
> > REPLY LEN: 301
> > REPLY: NYPD 24/7[]:[] []:[]Members of the NYPD, including a beat cop,
> > a rescue squad, detectives and the police commissioner; narrator
> > Dennis Franz.[]:[]Reality[]:[]2005-06-16T14:00:00[]:[]2005-06-16T15:00:00[]:[]KGODT2[]:[]none[]:[]7_2[]:[]1041[]:[]SH658051[]:[]SH6580510000[]:[]
> > []:[]1[]:[]2004-06-22[]:[]0
> > ++++ recorder_pause
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]PAUSE'
> > REPLY LEN: 2
> > REPLY: ok
> > +++++ recorder_set_channel 5_1
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]SET_CHANNEL[]:[]5_1'
> > REPLY LEN: 2
> > REPLY: ok
> > ++++ recorder_get_program_info
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]GET_PROGRAM_INFO'
> > REPLY LEN: 249
> > REPLY: Guiding Light[]:[] []:[]Trials and tribulations of the Bauer,
> > Lewis and Spaulding
> > families.[]:[]Soap[]:[]2005-06-16T14:00:00[]:[]2005-06-16T15:00:00[]:[]KPIX
> > DT[]:[]none[]:[]5_1[]:[]1032[]:[]SH001966[]:[]SH0019660000[]:[]
> > []:[]1[]:[]2000-01-01[]:[]0
> > +++ TL : recorder_end_stream
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]STOP_LIVETV'
> > REPLY LEN: 2
> > REPLY: 'ok'
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]DONE_RINGBUF'
> > REPLY LEN: 2
> > REPLY: 'OK'
> > REQUEST->req: 'QUERY_IS_ACTIVE_BACKEND[]:[]mythtvbe'
> > REPLY LEN: 4
> > REPLY: 'TRUE'
> >
> > ========== second iteration ==========
> >
> > +++ connect
> > REQUEST->req: 'MYTH_PROTO_VERSION 15'
> > REPLY LEN: 13
> > REPLY: 'ACCEPT[]:[]15'
> > REQUEST->req: 'ANN Playback mythtvbe 0'
> > REPLY LEN: 2
> > REPLY: 'OK'
> > +++ TL : recorder_get_free_recorder
> > REQUEST->req: 'GET_NEXT_FREE_RECORDER[]:[]-1'
> > REPLY LEN: 28
> > REPLY: '1[]:[]192.168.123.3[]:[]6543'
> > REQUEST->req: 'MYTH_PROTO_VERSION 15'
> > REPLY LEN: 13
> > REPLY: 'ACCEPT[]:[]15'
> > REQUEST->req: 'ANN Playback mythtvbe 0'
> > REPLY LEN: 2
> > REPLY: 'OK'
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]SETUP_RING_BUFFER[]:[]0'
> > REPLY LEN: 92
> > REPLY: 'rbuf://192.168.123.3:6543/cache/cache/ringbuf1.nuv[]:[]2[]:[]-1073741824[]:[]0[]:[]104857600'
> > +++ TL : recorder_start_stream
> > REQUEST->req: 'ANN Playback mythtvbe 0'
> > REPLY LEN: 2
> > REPLY: 'OK'
> > REQUEST->req: 'ANN RingBuffer mythtvbe 1'
> > REPLY LEN: 2
> > REPLY: 'OK'
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]SPAWN_LIVETV'
> > REPLY LEN: 2
> > REPLY: 'ok'
> > +++ TL : recorder_get_program_info
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]GET_PROGRAM_INFO'
> > REPLY LEN: 249
> > REPLY: Guiding Light[]:[] []:[]Trials and tribulations of the Bauer,
> > Lewis and Spaulding
> > families.[]:[]Soap[]:[]2005-06-16T14:00:00[]:[]2005-06-16T15:00:00[]:[]KPIX
> > DT[]:[]none[]:[]5_1[]:[]1032[]:[]SH001966[]:[]SH0019660000[]:[]
> > []:[]1[]:[]2000-01-01[]:[]0
> > Channel 5_1: Guiding Light -- Trials and tribulations of the Bauer,
> > Lewis and Spaulding families.
> > ++++ recorder_pause
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]PAUSE'
> > REPLY LEN: 2
> > REPLY: ok
> > +++++ recorder_change_channel CHANNEL_DIRECTION_UP
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]CHANGE_CHANNEL[]:[]0'
> > REPLY LEN: 2
> > REPLY: ok
> > ++++ recorder_get_program_info
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]GET_PROGRAM_INFO'
> > REPLY LEN: 192
> > REPLY: Paid Programming[]:[] []:[] []:[]
> > []:[]2005-06-16T14:00:00[]:[]2005-06-16T14:30:00[]:[]KKPXDT[]:[]none[]:[]65_1[]:[]1065[]:[]SH000001[]:[]SH0000010000[]:[]
> > []:[]0[]:[]2005-06-16T14:00:00[]:[]0
> > ++++ recorder_pause
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]PAUSE'
> > REPLY LEN: 2
> > REPLY: ok
> > +++++ recorder_set_channel 5_1
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]SET_CHANNEL[]:[]5_1'
> > REPLY LEN: 2
> > REPLY: ok
> > ++++ recorder_get_program_info
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]GET_PROGRAM_INFO'
> > REPLY LEN: 249
> > REPLY: Guiding Light[]:[] []:[]Trials and tribulations of the Bauer,
> > Lewis and Spaulding
> > families.[]:[]Soap[]:[]2005-06-16T14:00:00[]:[]2005-06-16T15:00:00[]:[]KPIX
> > DT[]:[]none[]:[]5_1[]:[]1032[]:[]SH001966[]:[]SH0019660000[]:[]
> > []:[]1[]:[]2000-01-01[]:[]0
> > +++ TL : recorder_end_stream
> > REQUEST->req: 'QUERY_RECORDER 1[]:[]STOP_LIVETV'
> > ======== thats where the backend crashes =======
> >
> > Thanks
> >
> > Mudit
> >
>


More information about the mythtv-dev mailing list