|
@@ -119,7 +119,8 @@ static inline int dvb_dmx_swfilter_payload(struct dvb_demux_feed *feed,
|
|
|
ccok = ((feed->cc + 1) & 0x0f) == cc;
|
|
|
feed->cc = cc;
|
|
|
if (!ccok)
|
|
|
- dprintk("missed packet!\n");
|
|
|
+ dprintk("missed packet: %d instead of %d!\n",
|
|
|
+ cc, (feed->cc + 1) & 0x0f);
|
|
|
#endif
|
|
|
|
|
|
if (buf[1] & 0x40) // PUSI ?
|
|
@@ -188,7 +189,7 @@ static void dvb_dmx_swfilter_section_new(struct dvb_demux_feed *feed)
|
|
|
|
|
|
#ifdef CONFIG_DVB_DEMUX_SECTION_LOSS_LOG
|
|
|
if (sec->secbufp < sec->tsfeedp) {
|
|
|
- int i, n = sec->tsfeedp - sec->secbufp;
|
|
|
+ int n = sec->tsfeedp - sec->secbufp;
|
|
|
|
|
|
/*
|
|
|
* Section padding is done with 0xff bytes entirely.
|
|
@@ -196,12 +197,9 @@ static void dvb_dmx_swfilter_section_new(struct dvb_demux_feed *feed)
|
|
|
* but just first and last.
|
|
|
*/
|
|
|
if (sec->secbuf[0] != 0xff || sec->secbuf[n - 1] != 0xff) {
|
|
|
- dprintk("dvb_demux.c section ts padding loss: %d/%d\n",
|
|
|
+ dprintk("section ts padding loss: %d/%d\n",
|
|
|
n, sec->tsfeedp);
|
|
|
- dprintk("dvb_demux.c pad data:");
|
|
|
- for (i = 0; i < n; i++)
|
|
|
- pr_cont(" %02x", sec->secbuf[i]);
|
|
|
- pr_cont("\n");
|
|
|
+ dprintk("pad data: %*ph\n", n, sec->secbuf);
|
|
|
}
|
|
|
}
|
|
|
#endif
|
|
@@ -240,9 +238,9 @@ static int dvb_dmx_swfilter_section_copy_dump(struct dvb_demux_feed *feed,
|
|
|
|
|
|
if (sec->tsfeedp + len > DMX_MAX_SECFEED_SIZE) {
|
|
|
#ifdef CONFIG_DVB_DEMUX_SECTION_LOSS_LOG
|
|
|
- dprintk("dvb_demux.c section buffer full loss: %d/%d\n",
|
|
|
- sec->tsfeedp + len - DMX_MAX_SECFEED_SIZE,
|
|
|
- DMX_MAX_SECFEED_SIZE);
|
|
|
+ dprintk("section buffer full loss: %d/%d\n",
|
|
|
+ sec->tsfeedp + len - DMX_MAX_SECFEED_SIZE,
|
|
|
+ DMX_MAX_SECFEED_SIZE);
|
|
|
#endif
|
|
|
len = DMX_MAX_SECFEED_SIZE - sec->tsfeedp;
|
|
|
}
|
|
@@ -275,7 +273,7 @@ static int dvb_dmx_swfilter_section_copy_dump(struct dvb_demux_feed *feed,
|
|
|
dvb_dmx_swfilter_section_feed(feed);
|
|
|
#ifdef CONFIG_DVB_DEMUX_SECTION_LOSS_LOG
|
|
|
else
|
|
|
- dprintk("dvb_demux.c pusi not seen, discarding section data\n");
|
|
|
+ dprintk("pusi not seen, discarding section data\n");
|
|
|
#endif
|
|
|
sec->secbufp += seclen; /* secbufp and secbuf moving together is */
|
|
|
sec->secbuf += seclen; /* redundant but saves pointer arithmetic */
|
|
@@ -310,9 +308,12 @@ static int dvb_dmx_swfilter_section_packet(struct dvb_demux_feed *feed,
|
|
|
|
|
|
if (!ccok || dc_i) {
|
|
|
#ifdef CONFIG_DVB_DEMUX_SECTION_LOSS_LOG
|
|
|
- dprintk("discontinuity %s: %d bytes lost\n",
|
|
|
- !ccok ? "detected" : "indicated",
|
|
|
- count + 4);
|
|
|
+ if (dc_i)
|
|
|
+ dprintk("%d frame with disconnect indicator\n",
|
|
|
+ cc);
|
|
|
+ else
|
|
|
+ dprintk("discontinuity: %d instead of %d. %d bytes lost\n",
|
|
|
+ cc, (feed->cc + 1) & 0x0f, count + 4);
|
|
|
/*
|
|
|
* those bytes under sume circumstances will again be reported
|
|
|
* in the following dvb_dmx_swfilter_section_new
|
|
@@ -347,8 +348,7 @@ static int dvb_dmx_swfilter_section_packet(struct dvb_demux_feed *feed,
|
|
|
}
|
|
|
#ifdef CONFIG_DVB_DEMUX_SECTION_LOSS_LOG
|
|
|
else if (count > 0)
|
|
|
- dprintk("dvb_demux.c PUSI=1 but %d bytes lost\n",
|
|
|
- count);
|
|
|
+ dprintk("PUSI=1 but %d bytes lost\n", count);
|
|
|
#endif
|
|
|
} else {
|
|
|
/* PUSI=0 (is not set), no section boundary */
|
|
@@ -418,9 +418,10 @@ static void dvb_dmx_swfilter_packet(struct dvb_demux *demux, const u8 *buf)
|
|
|
1024);
|
|
|
speed_timedelta = ktime_ms_delta(cur_time,
|
|
|
demux->speed_last_time);
|
|
|
- dprintk("TS speed %llu Kbits/sec \n",
|
|
|
- div64_u64(speed_bytes,
|
|
|
- speed_timedelta));
|
|
|
+ if (speed_timedelta)
|
|
|
+ dprintk("TS speed %llu Kbits/sec \n",
|
|
|
+ div64_u64(speed_bytes,
|
|
|
+ speed_timedelta));
|
|
|
}
|
|
|
|
|
|
demux->speed_last_time = cur_time;
|
|
@@ -445,8 +446,8 @@ static void dvb_dmx_swfilter_packet(struct dvb_demux *demux, const u8 *buf)
|
|
|
|
|
|
if ((buf[3] & 0xf) != demux->cnt_storage[pid]) {
|
|
|
dprintk_tscheck("TS packet counter mismatch. PID=0x%x expected 0x%x got 0x%x\n",
|
|
|
- pid, demux->cnt_storage[pid],
|
|
|
- buf[3] & 0xf);
|
|
|
+ pid, demux->cnt_storage[pid],
|
|
|
+ buf[3] & 0xf);
|
|
|
demux->cnt_storage[pid] = buf[3] & 0xf;
|
|
|
}
|
|
|
}
|