[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: modm0dev



> > This is because modm0dev only checks every 200ms whether data on the
> > serial port arrived and possible wakes the selecting process.
> 
> At 2400, which is what I use for right now, that is about 48 characters.
> I think 200ms is just too slow.  And what do you mean it checks?
> Isn't it interrupt driven?  Am I not understanding something ?

Actual data input is interrupt driven. But wakeselect() cannot be called
directly from the receiver interrupt routine for speed reasons. So modm0dev
runs a daemon process which checks every 200ms (Fselect (200, ....)) whether
data has arrived in the meantime calls wakeselect() in this case to wake up
selecting processes.

> It has locked up me playing nethack across the line to a vt240 terminal.
> I installed modm0dev and it fixed it.  At 19200, /dev/modem1 would lock
> up about every 20 minutes (on average) forcing me to reboot.  It has
> also done this with my terminal (which does a select() and then a Fread()
> from the modem and Fwrite() to the console, or vice-versa, depending on
> what Fselect() says about the file handles).  I think I like the threaded
> version better, but anyway, as I was saying, it locks up sometimes.  Its
> pretty rare, but when I disconnect sometimes I get some trash on the
> disconnect, and this seems to trigger the same bug as I get the same sort
> of lock-up (anything reading or writing to /dev/modem1 sits there).

I have never noticed that. Can you reproduce this "feature"? And does
installing hsmodem (before mint) cure the situation?


Kay.