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

[plamo:01362] Re: 初歩的な質問ネットワークの設定について



From: KOJIMA Mitsuhiro <kojima@criepi.denken.or.jp>
Subject: [plamo:01359] Re: 初歩的な質問ネットワークの設定について
Date: Thu, 4 Feb 1999 02:43:58 +0900

> > >LinuxのNetworkカードのドライバはPCIのマスタリングスロットを要求するも
> > >のがほとんどで、IRQが他のPCIカードと競合している場合にこのような症状と
> > >なると思います。
> >
> > 一般的にpciはirqが共有できるように設計されているはずですよね?
> > これは、ドライバの設計ミスということなのですか?
> > それとも、ネットワークデバイスは必ず専用のirqを必要とするのでしょうか?
> 
> まぁ、厳密に言うとドライバの機能不足だと思いますが、Linux のデバイスド

私もそうだと思っています。
#積極的に競合させてみて、問題無く動くならば、それはそれでいいのではな
#いかと思いますが、、、

過去に他の人のマシンで、Windows上では、PCI SCSIカードと、ネットワーク
カードのIRQが競合していても何の問題もないのに、Slackwareをインストール
して、ネットワークが使えなくてはまった記憶があります。

それ以来たとえPCIのカードでも、Linux上ではIRQが競合しないように注意し
てきました。また、当該カードではないですが、RTL-8129/8139カードを使っ
ていた時に不具合が出て、調べた際、

http://cesdis.gsfc.nasa.gov/linux/drivers/rtl8139.html

の中程に、
-----------------
Compatibility, Errata and Bugs

The driver has been tested with 

     Chip: both the 8129 and 8139 chips 
     Kernels: 2.0.30/RedHat-4.2 and 2.0.31 
     Architectures: x86 and Alpha 

but not with all combinations of each. 

If you encounter Rx overflow errors and transmit timeouts you likely
have the card in a non-bus-master slot. Other possible problems are
older PCI implementations, especially i486-class motherboards, that
have bugs when using long PCI burst transfers.
------------

などとあります。Linuxのネットワークドライバは基本的にマスタリングスロッ
トを要求するものだろうと言う推定はこの当たりから来ています。
#Donald Beckerさんは、LinuxのNetworkドライバの数多くをてがけている方
#です。



FYI:
最近のATXのマザーボードでは、PCIスロットが4本以上のものがいくつかあり
ますが、私が知る限り、一番AGPスロット寄りのPCIスロットは、AGPスロットと、
そして、外側の1/2本はUSBとIRQが共有される場合がほとんどです。もし問題な
く使いたいならば、AGP寄りの真中2本を使うのが安心です。AGP/PCI1は
ビデオカード用に確保して、どちらかを使うとよいでしょう。

マスター
   △*1    AGP          ===============
   △*1    PCI1     -------------------
   ○      PCI2     -------------------
   ○      PCI3     -------------------
   ×*2    PCI4     -------------------
   ×*2    PCI5     -------------------

*1:どちらか一つがマスターとして取れる。
*2:USBと共有される。

ま、PCIカードを3枚以上挿そうとすると、SerialかParallelか、ともかくどっ
ちかを殺して、IRQを確保しないといけなくなるだろうと思います。それから、
これは一般的な話で、個々の環境によって、PCIにIRQが合計いくつ割当たるか
変わります。普通は、5,9,10,11の4つのうちのいくつかが割当たるのですが、
USBがこのうちのどれかを使うと推定されるので、実質的には3つが使えるだけ
でしょう。さらにISAのサウンドカードを入れると、さらに使えるIRQが減少し
ます。
#将来的にはこういうIRQなどで悩む必要がなくなるといいのですが。

少なくともPlamoでは今の所USBのサポートはしてないみたいなので、USBと競
合しても問題なく使えるみたいですが。。。

私のマシン(Abit BX-6)の/proc/pciは以下の通りです。

------------------------
PCI devices found:
  Bus  0, device  11, function  0:
    SCSI storage controller: AMD 53C974 (rev 16).
      Medium devsel.  IRQ 9.  Master Capable.  Latency=64.  Min Gnt=4.Max Lat=40.
      I/O at 0xe800.
  Bus  0, device   9, function  0:
    Ethernet controller: VIA Technologies Unknown device (rev 6).
      Vendor id=1106. Device id=3043.
      Medium devsel.  IRQ 10.  Master Capable.  Latency=64.  Min Gnt=118.Max Lat=152.
      I/O at 0xe400.
      Non-prefetchable 32 bit memory at 0xe8000000.
  Bus  0, device   7, function  3:
    Bridge: Intel 82371AB PIIX4 ACPI (rev 2).
      Medium devsel.  Fast back-to-back capable.  
  Bus  0, device   7, function  2:
    USB Controller: Intel 82371AB PIIX4 USB (rev 1).
      Medium devsel.  Fast back-to-back capable.  IRQ 10.  Master Capable.  Latency=64.  
      I/O at 0xe000.
  Bus  0, device   7, function  1:
    IDE interface: Intel 82371AB PIIX4 IDE (rev 1).
      Medium devsel.  Fast back-to-back capable.  Master Capable.  Latency=64.  
      I/O at 0xf000.
  Bus  0, device   7, function  0:
    ISA bridge: Intel 82371AB PIIX4 ISA (rev 2).
      Medium devsel.  Fast back-to-back capable.  Master Capable.  No bursts.  
  Bus  1, device   0, function  0:
    VGA compatible controller: Intel Unknown device (rev 33).
      Vendor id=8086. Device id=7800.
      Medium devsel.  Fast back-to-back capable.  IRQ 11.  Master Capable.  No bursts.  
      Prefetchable 32 bit memory at 0xe6000000.
      Non-prefetchable 32 bit memory at 0xe5000000.
  Bus  0, device   1, function  0:
    PCI bridge: Intel 440BX - 82443BX AGP (rev 2).
      Medium devsel.  Master Capable.  Latency=64.  Min Gnt=136.
  Bus  0, device   0, function  0:
    Host bridge: Intel 440BX - 82443BX Host (rev 2).
      Medium devsel.  Master Capable.  Latency=64.  
      Prefetchable 32 bit memory at 0xe0000000.
---------------

ネットワークカード(VIA VT86C100Aです)とUSBのコントローラのIRQが10で競合し
ているのがお分かりでしょう。もし、IRQが足りなくなったら、逆にUSBとの競
合を積極的に活用する、と言う事も今の所は可能です。
----+----1----+----2----+----3----+----4----+----5----+----6----+----+--
Shigeo Sagai                sagai@criepi.denken.or.jp

Follow-Ups
[plamo:01363] Re: 初歩的な質問ネットワークの設定について, Chie Nakatani
[plamo:01370] PCI slot, Chie Nakatani
References
[plamo:01359] Re: 初歩的な質問ネットワークの設定について, KOJIMA Mitsuhiro

[検索ページ] [メール一覧]
Plamo ML 公開システム