On Saturday 02 December 2006 23:17, John Harvey wrote:
> > -----Original Message-----
> > From: [EMAIL PROTECTED]
> > [mailto:[EMAIL PROTECTED] On Behalf Of Jelle
> > Sent: 02 December 2006 21:57
> > To: Discussion list for development of the IVTV driver
> > Subject: Re: [ivtv-devel] 50% CPU usage while using PVR350
> > tv-out and mythtv
> >
> > Hans Verkuil wrote:
> > > On Saturday 02 December 2006 06:55, Petter Gundersen wrote:
> > >> I have some info about the issue with high cpu usage while
> >
> > using the
> >
> > >> pvr350 tv-out and mythtv.
> > >>
> > >> Earlier reports here:
> > >> http://www.gossamer-threads.com/lists/ivtv/users/32506#32506
> > >> http://www.gossamer-threads.com/lists/ivtv/users/32807#32807
> > >>
> > >> This started happening between ivtv 0.7.0 and 0.7.1, more
> >
> > precisely
> >
> > >> changeset 3406 "Added workaround for the DMA 0x0000000b
> > >> error...".
> > >>
> > >> I'm not sure if this is a ivtv bug, a myth bug, or if some of my
> > >> kernel settings are messing things up. Since I never have had
> > >> any problems with the DMA 0x0000000b error, I use the attached
> >
> > patch with
> >
> > >> ivtv 0.8.1, and my cpu usage is back to it's normal ~1%. The
> > >> patch reverts changeset 3413, 3407 and parts of 3400.
> > >>
> > >> Regards,
> > >> Petter
> > >
> > > Which process is it that takes so much CPU time?
> >
> > For me it was the X server itself that used 2x-3x as much CPU
> > without the patch.
> >
> > Jelle.
>
> I would have guessed at that being the case. It's probably actually
> time spent waiting in the kernel rather than doing any real work. At
> least that was the case before I managed to reduce the cpu usage to
> current levels.
Ah, I think I found it. Thanks for narrowing it down for me. Please try
the attached patch (should work for ivtv-0.8 and ivtv-0.9) and let me
know if this fixes the CPU load.
Thanks,
Hans
Index: ivtv-queue.c
===================================================================
--- ivtv-queue.c (revision 3623)
+++ ivtv-queue.c (working copy)
@@ -891,7 +891,7 @@
break;
}
- //ivtv_sleep_timeout(HZ / 100, 1);
+ ivtv_sleep_timeout(HZ / 100, 1);
if ((jiffies - then) > (HZ /5)) {
IVTV_DEBUG_WARN(
"DMA_TO: REG_DMAXFER 2 wait failed\n");
_______________________________________________
ivtv-devel mailing list
[email protected]
http://ivtvdriver.org/mailman/listinfo/ivtv-devel