From patchwork Wed Dec 7 20:45:17 2005 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andreas Brachold X-Patchwork-Id: 12110 Received: from web1.dns-net.de ([212.91.231.162]) by www.linuxtv.org with esmtp (Exim 4.50) id 1Ek6AG-0002KB-37 for vdr@linuxtv.org; Wed, 07 Dec 2005 21:45:24 +0100 Received: from wopr.deltab.de (n115-180.dsl.de.inter.net [213.73.115.180]) by web1.dns-net.de (8.11.6/8.11.6) with ESMTP id jB7KjMB20737 for ; Wed, 7 Dec 2005 21:45:22 +0100 From: Andreas Brachold To: vdr@linuxtv.org Date: Wed, 07 Dec 2005 21:45:17 +0100 Message-Id: <1133988317.5677.7.camel@wopr.deltab.de> Mime-Version: 1.0 X-Mailer: Evolution 2.0.4 Subject: [vdr] Seqfault of cutting thread on "Low disk space!" X-BeenThere: vdr@linuxtv.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: VDR Mailing List List-Id: VDR Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 07 Dec 2005 20:45:24 -0000 Status: O X-Status: X-Keywords: X-UID: 6517 Hi, we*) notice a seqfault of cutting Thread on "Low disk space!", if OSD used during cutting process. i think, reason is a call of a OSD function from background cutting thread. I tested only on 1.3.32, but 1.3.37 should also affected (gdb) thread 5 [Switching to thread 5 (process 4733)]#0 0xb7e68114 in ioctl () from /lib/tls/libc.so.6 (gdb) bt #0 0xb7e68114 in ioctl () from /lib/tls/libc.so.6 #1 0x080aa202 in cDvbOsd::Cmd (this=0x8c9e710, cmd=OSD_Clear, color=0, x0=0, y0=0, x1=0, y1=0, data=0x0) at dvbosd.c:110 #2 0x080a9c13 in cDvbOsd (this=0x8c9e710, Left=54, Top=504, OsdDev=5) at dvbosd.c:63 #3 0x080aa816 in cDvbOsdProvider::CreateOsd (this=0x8c81930, Left=54, Top=504) at dvbosd.c:183 #4 0x080e4854 in cOsdProvider::NewOsd (Left=54, Top=504) at osd.c:738 #5 0x08110911 in cSkinSTTNGDisplayMessage (this=0x8c95570) at skinsttng.c:1052 #6 0x08111100 in cSkinSTTNG::DisplayMessage (this=0x8c819f0) at skinsttng.c:1117 #7 0x0810509e in cSkins::Message (this=0x81f73e4, Type=mtWarning, s=0x8143f3f "Platte beinahe voll!", Seconds=30) at skins.c:179 #8 0x080bb3d4 in cInterface::Confirm (this=0x8c818c0, s=0x8143f3f "Platte beinahe voll!", Seconds=30, WaitForTimeout=false) at interface.c:71 #9 0x080ece45 in AssertFreeDiskSpace (Priority=-1) at recording.c:147 #10 0x0809d62f in cCuttingThread::Action (this=0x8c92528) at cutter.c:86 #11 0x0811b716 in cThread::StartThread (Thread=0x8c92528) at thread.c:234 #12 0xb7fb8b63 in start_thread () from /lib/tls/libpthread.so.0 #13 0xb7e6f18a in clone () from /lib/tls/libc.so.6 Here a possibly solution : } *) I'm not the original bug reporter, but i could this seqfault reproduce http://www.vdr-portal.de/board/thread.php?threadid=42375&sid= Cu, Andreas --- recording.c.org 2005-09-11 17:52:31.000000000 +0200 +++ recording.c 2005-12-07 21:33:18.000000000 +0100 @@ -144,7 +144,7 @@ } // Unable to free disk space, but there's nothing we can do about that... isyslog("...no old recording found, giving up"); - Interface->Confirm(tr("Low disk space!"), 30); + Skins.QueueMessage(mtWarning, tr("Low disk space!"), 30); } LastFreeDiskCheck = time(NULL);