[mdk-re] Multiple Ethernet interfaces

Sergey Vlasov =?iso-8859-1?q?vsu_=CE=C1_mivlgu=2Emurom=2Eru?=
Вт Апр 10 18:55:11 MSD 2001


On Tue, 10 Apr 2001 17:39:20 +0300
Alexander Bokovoy <ab на avilink.net> wrote:

> On Tue, Apr 10, 2001 at 06:34:05PM +0400, Sergey Vlasov wrote:
> > On Tue, 10 Apr 2001 17:18:02 +0300
> > Alexander Bokovoy <ab на avilink.net> wrote:
> > 
> > > On Tue, Apr 10, 2001 at 05:51:51PM +0400, Sergey Vlasov wrote:
> > > > On Tue, 10 Apr 2001 13:07:02 +0400
> > > > cornet <cornet на zmail.ru> wrote:
> > > > 
> > > > > Я не слишком понимаю, как два девайса работая одновременно и
> > > > > независимо
> > > > > могут разделять одно прерывание! :-/
> > > > > Поясните, pls.
> > > > 
> > > > У шины PCI это стандартная возможность. В ядре Linux
> реализуется
> > > > следующим образом: для каждого IRQ формируется цепочка
> > > обработчиков, и
> > > > при поступлении прерывания все они вызываются по очереди.
> Каждый
> > > из
> > > > обработчиков опрашивает свое устройство, и если запрос пришел
> от
> > > него,
> > > > обслуживает. Поскольку запрос выставляется по уровню, а не по
> > > фронту,
> > > > как на ISA, если даже в процессе такой обработки придет еще
> один
> > > > запрос по тому же IRQ, он не пропадет - после возврата из
> > > прерывания
> > > > сразу произойдет новое.
> > > > 
> > > > Есть, правда, фокус: дело в том, что обработчиков два типа -
> > > обычный
> > > > (работает при разрешенных других прерываниях) и SA_INTERRUPT
> (при
> > > его
> > > > выполнении все прерывания запрещены). Так вот, на одном IRQ
> могут
> > > > висеть только обработчики одного типа. Из-за этого сетевые и
> > > звуковые
> > > > карты не могут жить на одном прерывании, например, со SCSI
> (или
> > > HPT3xx
> > > > IDE). Решение проблемы в случае материнской платы с HPT3xx -
> > > > переставить карточку в другой слот (наблюдал такую проблему на
> > > Abit
> > > > BX133 RAID, у нее в книжечке расписано, какой слот с чем делит
> > > > прерывание, надо только почитать :-).
> > > Есть и еще один фокус -- одинаковые устройства не работают при
> > > разделении одного прерывания. Попробуйте, например, на одну
> PCI-шину
> > > повесить 4 сетевых радиокарты. (других PCI-устройств нет).
> > 
> > А вот это, скорее всего, зависит от кривости драйвера (или самого
> > устройства). У меня сетевые карточки (не радио) отлично работают
> на
> > одном прерывании.
> Сколько? Дело в том, что 3 радио + обычная сетевая карта работают
> нормально,
> а вот 4 радио -- только на материнской плате с двумя PCI-шинами. Там
> их
> 5 штук заработало :-)

Вот сейчас 3 штуки на одном прерывании, одна на другом. И вроде живут.
А 3 радио + обычная, это имелось в виду на одном прерывании или нет?





Подробная информация о списке рассылки community