[mythtv-users] Mythbackend Segfault on Delete - SOLVED (I Hope)
Kirk Bocek
t004 at kbocek.com
Thu Feb 1 05:35:57 UTC 2007
Looks like my problem was with a large (500GB) XFS partition. I saw mention
here of some problem that Myth has with XFS. So I backed-up the files,
reformatted to ext3, restored and restarted mythbackend. It's happily
recording some test programs now, jumping between SD and HD streams.
That's too bad, I carefully benchmarked filesystems and found XFS had the best
performance on my array.
Does anyone have more information about this bug?
Kirk Bocek
Kirk Bocek wrote:
> I *thought* I had it solved. Yes, mythlib did need to be updated. But now when
> I start a recording on the HD-5500 I get:
>
> cx88[0]: irq aud [0x201001] dn_risci1* dn_sync* mchg_irq
> cx88[0]: irq aud [0x1001] dn_risci1* dn_sync*
> Unable to handle kernel paging request at ffff80ff05698508 RIP:
> [<ffffffff802fb6d6>] sync_single+0x1d/0x7e
> PGD 0
> Oops: 0000 [1] SMP
> CPU 1
> Modules linked in: cx88_dvb cx88_vp3054_i2c mt352 dvb_pll or51132
> video_buf_dvb dvb_core nxt200x isl6421 zl10353 cx24123 lgdt330x cx22702 nfsd
> exportfs lockd nfs_acl parport_pc lp parport autofs4 tun sunrpc ipmi_devintf
> ipmi_si ipmi_msghandler xt_state xt_tcpudp iptable_filter iptable_nat ip_nat
> ip_conntrack nfnetlink ip_tables x_tables xfs tsdev joydev video usb_storage
> button battery asus_acpi ac uhci_hcd ehci_hcd cx88_alsa snd_pcm_oss
> snd_mixer_oss snd_pcm snd_timer snd soundcore snd_page_alloc cx88_blackbird
> cx8802 cx2341x tuner cx8800 cx88xx ir_common i2c_algo_bit video_buf tveeprom
> compat_ioctl32 btcx_risc videodev v4l1_compat v4l2_common i2c_i801 i2c_core
> shpchp via_rhine e1000 floppy dm_snapshot dm_zero dm_mirror ext3 jbd dm_mod
> 3w_9xxx sd_mod scsi_mod
> Pid: 22680, comm: mythbackend Not tainted 2.6.18.6smp-beryl-04 #1
> RIP: 0010:[<ffffffff802fb6d6>] [<ffffffff802fb6d6>] sync_single+0x1d/0x7e
> RSP: 0018:ffff8101103dbcc0 EFLAGS: 00010246
> RAX: ffffffffe00032a1 RBX: ffff810111c21000 RCX: 0000000000000002
> RDX: ffff81000567f000 RSI: 0000000002faf800 RDI: ffff81013ae1c070
> RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000001000
> R10: 0000000100000000 R11: ffffffff802fbeb9 R12: 0000000000000002
> R13: 0000000000000071 R14: ffff81013ae1c070 R15: 0000000000000000
> FS: 0000000048810960(0063) GS:ffff81013ac8dac0(0000) knlGS:0000000000000000
> CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> CR2: ffff80ff05698508 CR3: 0000000114e45000 CR4: 00000000000006e0
> Process mythbackend (pid: 22680, threadinfo ffff8101103da000, task
> ffff8101131aa080)
> Stack: ffffffff802fbf41 ffff810139858c30 ffff810134cf2868 ffff81013ae1c000
> 0000000000000000 ffff8101103dbdf8 ffffffff880fe609 ffff810139858c00
> ffff810139858c68 ffff810134cf2868 ffffffff880ff224 0000000000000000
> Call Trace:
> [<ffffffff802fbf41>] swiotlb_sync_sg_for_cpu+0x88/0x99
> [<ffffffff880fe609>] :video_buf:videobuf_dma_sync+0x6b/0x72
> [<ffffffff880ff224>] :video_buf:videobuf_dqbuf+0x144/0x1a4
> [<ffffffff88126b44>] :cx8800:video_do_ioctl+0x3a6/0x443
> [<ffffffff80222de7>] task_rq_lock+0x3d/0x6f
> [<ffffffff8022303b>] __activate_task+0x2a/0x3c
> [<ffffffff80223870>] try_to_wake_up+0x350/0x362
> [<ffffffff880e93bf>] :videodev:video_usercopy+0x131/0x1c8
> [<ffffffff8812679e>] :cx8800:video_do_ioctl+0x0/0x443
> [<ffffffff8043079a>] __up_wakeup+0x35/0x67
> [<ffffffff88126bf6>] :cx8800:video_ioctl+0x15/0x6e
> [<ffffffff80286591>] do_ioctl+0x5d/0x6f
> [<ffffffff8028680f>] vfs_ioctl+0x26c/0x27d
> [<ffffffff80286879>] sys_ioctl+0x59/0x7c
> [<ffffffff80209622>] system_call+0x7e/0x83
>
>
> Code: 4c 8b 14 c2 74 07 41 ff c8 74 29 eb 49 83 f9 02 0f 94 c2 85
> RIP [<ffffffff802fb6d6>] sync_single+0x1d/0x7e
> RSP <ffff8101103dbcc0>
> CR2: ffff80ff05698508
> <3>BUG: sleeping function called from invalid context at kernel/rwsem.c:20
> in_atomic():0, irqs_disabled():1
>
> Call Trace:
> [<ffffffff80222d67>] __might_sleep+0xb3/0xb5
> [<ffffffff8023fc31>] down_read+0x15/0x1e
> [<ffffffff8023752b>] blocking_notifier_call_chain+0x13/0x36
> [<ffffffff8022d52e>] do_exit+0x22/0x8d5
> [<ffffffff80430af1>] _spin_lock_irqsave+0x9/0xe
> [<ffffffff8030cad2>] vgacon_set_cursor_size+0x33/0xd0
> [<ffffffff80432c71>] do_page_fault+0x71d/0x78b
> [<ffffffff802251bb>] default_wake_function+0x0/0xe
> [<ffffffff80256247>] __alloc_pages+0x66/0x2b1
> [<ffffffff8020a2f1>] error_exit+0x0/0x84
> [<ffffffff802fbeb9>] swiotlb_sync_sg_for_cpu+0x0/0x99
> [<ffffffff802fb6d6>] sync_single+0x1d/0x7e
> [<ffffffff802fbf41>] swiotlb_sync_sg_for_cpu+0x88/0x99
> [<ffffffff880fe609>] :video_buf:videobuf_dma_sync+0x6b/0x72
> [<ffffffff880ff224>] :video_buf:videobuf_dqbuf+0x144/0x1a4
> [<ffffffff88126b44>] :cx8800:video_do_ioctl+0x3a6/0x443
> [<ffffffff80222de7>] task_rq_lock+0x3d/0x6f
> [<ffffffff8022303b>] __activate_task+0x2a/0x3c
> [<ffffffff80223870>] try_to_wake_up+0x350/0x362
> [<ffffffff880e93bf>] :videodev:video_usercopy+0x131/0x1c8
> [<ffffffff8812679e>] :cx8800:video_do_ioctl+0x0/0x443
> [<ffffffff8043079a>] __up_wakeup+0x35/0x67
> [<ffffffff88126bf6>] :cx8800:video_ioctl+0x15/0x6e
> [<ffffffff80286591>] do_ioctl+0x5d/0x6f
> [<ffffffff8028680f>] vfs_ioctl+0x26c/0x27d
> [<ffffffff80286879>] sys_ioctl+0x59/0x7c
> [<ffffffff80209622>] system_call+0x7e/0x83
>
> Then when I tried to access mythbackend via mythweb:
>
> mythbackend[22681]: segfault at 00002aaaaaf25210 rip 000000317f67f357 rsp
> 0000000049010f60 error 4
>
> And then I have a '[mythbackend] <defunct>' in my 'ps -ef' listing. The
> zombied mythbackend cannot be removed by anything other than a reboot.
>
> This is a stock 2.6.18.6 kernel on an x86_64 SMP host using the kernel cx8800
> drivers.
>
> Can anyone provide any suggestions?
>
> ===================
> My problem was a libmyth package that was older than the mythbackend package.
> I was accidentally entering 'yum update myth\*' to update instead of 'yum
> update \*myth\*' when updating from atrpms.
>
> Hey, Axel, I thought yum was supposed to at least warn about dependencies like
> this?
>
> Kirk Bocek
>
> Kirk Bocek wrote:
>> After I let all the startup messages settle down, as usual, I went into
>> mythweb and attempted to delete one recording. the results:
>>
>> 2007-01-18 15:46:58.309 MainServer::HandleAnnounce Monitor
>> 2007-01-18 15:46:58.310 adding: beryl as a client (events: 0)
>> 2007-01-18 15:47:01.020 MainServer::HandleAnnounce Monitor
>> 2007-01-18 15:47:01.020 adding: beryl as a client (events: 0)
>> 2007-01-18 15:47:01.051 Preview Error: Previewer file
>> '/mnt/mythtv/12282_20070118113500.mpg' is not valid.
>> 2007-01-18 15:47:01.051 MainServer: Failed to make preview image.
>> 2007-01-18 15:47:01.052 MainServer::HandleAnnounce FileTransfer
>> 2007-01-18 15:47:01.052 adding: beryl as a remote file transfer
>> 2007-01-18 15:47:07.554 RingBuf(/mnt/mythtv/12282_20070118113500.mpg.png):
>> Could not open /mnt/mythtv/12282_20070118113500.mpg.png.
>> 2007-01-18 15:47:11.574 MainServer::HandleAnnounce Monitor
>> 2007-01-18 15:47:11.574 adding: beryl as a client (events: 0)
>>
>> Program received signal SIGSEGV, Segmentation fault.
>> [Switching to Thread 1191237984 (LWP 7538)]
>> 0x0000000000000000 in ?? ()
>>
>> So I tried touching the missing /mnt/mythtv/12282_20070118113500.mpg.png. I
>> restarted mythbackend and tried again. Same segfault.
>>
>> So I tried manually deleting both files. I reran mythbackend. Same segfault.
>>
>> Do you think the issue might be with:
>> adding: beryl as a remote file transfer
>>
>> This is a master server and everything is local.
>>
>> Gareth Glaccum wrote:
>>> I think unfortunately that mine might be different. It seems that very
>>> recently a patch for generating previews was applied. I think that this
>>> should fix my issue. If one of you could perform the following:
>>> (stop mythbackend)
>>> in a terminal:
>>> gdb mythbackend
>>> ->run
>>>
>>> Then cause the segfault
>>>
>>> -> where
>>>
>>> and submit the output (and last couple of lines) that may help in
>>> determining where the issue is.
>>> Gareth
>>>
>>> _______________________________________________
>>> mythtv-users mailing list
>>> mythtv-users at mythtv.org
>>> http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users
>> _______________________________________________
>> mythtv-users mailing list
>> mythtv-users at mythtv.org
>> http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users
>
>
>
> _______________________________________________
> mythtv-users mailing list
> mythtv-users at mythtv.org
> http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-users
More information about the mythtv-users
mailing list