lkml.org 
[lkml]   [2004]   [Feb]   [6]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
FromGerd Knorr <>
SubjectRe: [Linux 2.6.2] bttv0: skipped frame. no signal? high irq latency?
Date06 Feb 2004 12:19:35 +0100
Rui Saraiva <rmps@joel.ist.utl.pt> writes:

> Hello Gerd Knorr,
> 
> I've the dmesg full of this warnings (last 149 messages right now),
> although I didn't notice anything unusual in tvtime. I don't recall seeing
> those warnings with 2.4.x. Should I just ignore them?

It's more or less a leftover debug message.  As it says bttv drops a
frame on every message.  That may happen due to a bad signal (or when
you switch to another channel) or due to high irq latencies,
i.e. bttv's irq handler not being called fast enough.

Unless that happens very frequently without channel switches
triggering this don't worry.

The patch below makes bttv quiet.

  Gerd

--- video4linux/bttv-driver.c~	2004-01-09 11:25:10.000000000 +0100
+++ video4linux/bttv-driver.c	2004-02-06 11:48:54.818360213 +0100
@@ -3308,8 +3308,8 @@
 	unsigned long flags;
 	
 	if (bttv_verbose) {
-		printk(KERN_INFO "bttv%d: timeout: irq=%d/%d, risc=%08x, ",
-		       btv->c.nr, btv->irq_me, btv->irq_total,
+		printk(KERN_INFO "bttv%d: timeout: drop=%d irq=%d/%d, risc=%08x, ",
+		       btv->c.nr, btv->framedrop, btv->irq_me, btv->irq_total,
 		       btread(BT848_RISC_COUNT));
 		bttv_print_irqbits(btread(BT848_INT_STAT),0);
 		printk("\n");
@@ -3378,7 +3378,8 @@
 	bttv_irq_next_set(btv, &new);
 	rc = btread(BT848_RISC_COUNT);
 	if (rc < btv->main.dma || rc > btv->main.dma + 0x100) {
-		if (1 /* irq_debug */)
+		btv->framedrop++;
+		if (irq_debug)
 			printk("bttv%d: skipped frame. no signal? high irq latency? "
 			       "[main=%lx,o_vbi=%lx,o_field=%lx,rc=%lx]\n",
 			       btv->c.nr,
--- video4linux/bttvp.h~	2004-01-09 11:20:11.000000000 +0100
+++ video4linux/bttvp.h	2004-02-06 11:47:16.086017583 +0100
@@ -402,9 +402,10 @@
 	struct bttv_suspend_state state;
 
 	/* stats */
+	unsigned int errors;
+	unsigned int framedrop;
 	unsigned int irq_total;
 	unsigned int irq_me;
-	unsigned int errors;
 
 	unsigned int users;
 	struct bttv_fh init;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2005-03-22 13:00    [from the cache]
©2003-2008