[ale] configuring getty for dialOUT logins

Joe Knapka whyknot at mindspring.com
Sun Aug 4 21:56:24 EDT 1996


The Wayward Mage wrote:
> > Well, my interrupt was right, also; it was just being used by two
> > devices. This works as long as only one of those devices actually
> > generates interrupts.  And the behavior was erratic; sometimes I
> > could get the data from the terminal to the Linux box, and sometimes
> > I couldn't. That is, it worked some of the time. The point is that
> > the interrupt can be "right", but there can still be an interrupt
> > conflict, and then you might see the kind of behavior you describe.
> 
> How can I found out if this is the problem?  What may be using the same
> interrupt?
> 
> Michael

Don't look at hardware conflicts until you're really, really
sure the software is right (i.e. by hooking it up to a different
machine and getting it to work right the first time with the same
software configuration) - hardware conflicts are a huge pain in the
ass to diagnose.

An ad-hoc approach is to disable unnecessary devices like CDROMs and
mice and joysticks and so forth, and see if that makes things work.
Usually simply not using a device will prevent it from issuing
interrupts, but there could be cases where that's not so (I can't
think of any offhand), in which case you'd want to compile the
support for that device out of your kernel and probably remove the card
from the machine.

Umm, network cards generate a lot of interrupts if they're on an
active net, so that's a good place to start.

Unfortunately, the only way to really find out for sure is to find
all the hardware docs you have, take apart your system, and verify
that all the hardware is configured without conflict. Some of this
you can (must) do through your BIOS if you have a good BIOS.

There are supposed to be programs that run under DOS that tell you
all about the hardware layout of your system (even on old ISA systems).
I have never used one of these, so I can't recommend one, but that
might be a good idea. Also, if you have an EISA bus machine, that
architecture is supposed to make figuring these things out easier in
some ways, but I don't have that kind of machine and I don't know
exactly how this works.

In general there are at least three things that you need to make
sure are not in conflict:

(1) Interrupt number (IRQ).
(2) I/O addresses. Most devices use a range of the I/O address space,
which is a chunk of addresses in low memory. If the ranges for different
devices overlap, weirdness can result.
(3) Direct Memory Access (DMA) channel. I'm not sure what the 
consequences of a DMA conflict would be, but they probably wouldn't
be good. Not all devices use DMA. Mostly storage-controller stuff
like SCSI cards and IDE controllers.

All the documentation that came with your machine (if any :-) should
have these values for each device. You will probably need to take
your machine's case off and physically examine the cards to determine
how they are set up. If you _don't_ have docs for some component,
these days most card manufacturers have web sites where you can
find out how to configure their stuff.

Once you _find_ the conflict, you have to figure out how to
reconfigure the hardware and software to get around the problem.
This can also be quite challenging, and sometimes it simply can't
be done. For example, I'd really, really like to have my com2
(an AT&T WorldPort modem) and com4 (a real serial port) use
distinct interrupts, but unfortunately neither of them supports
any IRQ but 3. Que sera.

There's an important fact to be aware of wrt PC serial ports (the
built-in ones): COM1 and COM3 _always_ share an interrupt (usually 4),
and COM2 and COM4 always ahare, usually IRQ 3. To use COM3 and COM4,
you need a polling device driver; I believe Linux's serial port
driver is supposed to do this, but I think you have to fiddle with
setserial to get it to work, and I don't have Linux booted at the
moment. Next time I do I'll look around and see if I can figure
it out.

I hope you find out that the software is really the problem, before
you have to get into all this :-]

-- Joe

*** music / movies / microcode / high-speed pizza delivery ***






More information about the Ale mailing list