public inbox for linux-newbie@vger.kernel.org
 help / color / mirror / Atom feed
* skystar2\mt312 driver does not timeout under kernel 2.6.6
@ 2004-05-20  5:35 Adam Luchjenbroers
  0 siblings, 0 replies; only message in thread
From: Adam Luchjenbroers @ 2004-05-20  5:35 UTC (permalink / raw)
  To: linux-newbie

Under kernel 2.6.6 (modules dvbcore, mt312, skystar2 loaded) dvbtune enters
an infinite polling loop, as shown below.

polling....
Getting frontend event
FE_STATUS:
polling....
Getting frontend event
FE_STATUS: FE_HAS_CARRIER
polling....
Getting frontend event
FE_STATUS:
polling....
Getting frontend event
FE_STATUS: FE_HAS_CARRIER
polling....
Getting frontend event
...

Under 2.4.20 it simply pauses a few seconds then
receives an FE_TIMEDOUT and stops.

The following code has been identified in dvbtune, and it looks simply like
the driver is not responding with an FE_TIMEDOUT where perhaps it should be.

while (((event.status & FE_TIMEDOUT)==0) && ((event.status &
FE_HAS_LOCK)==0)) {
fprintf(stderr,"polling....\n");
if (poll(pfd,1,10000)){
if (pfd[0].revents & POLLIN){
fprintf(stderr,"Getting frontend event\n");
if ((status = ioctl(fd_frontend, FE_GET_EVENT, &event)) < 0){
if (errno != EOVERFLOW) {
perror("FE_GET_EVENT");
fprintf(stderr,"status = %d\n", status);
fprintf(stderr,"errno = %d\n", errno);
return -1;
}
else fprintf(stderr,"Overflow error, trying again (status = %d, errno =
%d)", status, errno);
}
}
print_status(stderr,event.status);
}
-
To unsubscribe from this list: send the line "unsubscribe linux-newbie" 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.linux-learn.org/faqs

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2004-05-20  5:35 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-05-20  5:35 skystar2\mt312 driver does not timeout under kernel 2.6.6 Adam Luchjenbroers

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox