さて、先日購入した、 SysKonnect 社の Gigabit Ethernet カードの SK-9844 ですが、 これまた先日購入の i840 Dual Pentium III マシンの、 PCI64 スロットに入れてみました (BIOS Setup を見ると、どうもこの 2 つの PCI64 スロット、 IRQ は share して 1 つしか取れないみたい。 せっかくの PCI64 スロット、もったいないなぁ。 ServerWorks あたりのチップセットもそんなもの? よく知らない)。 OS はとりあえず本日の FreeBSD-current。
FreeBSD 4.2-RELEASE でもそうなのですが、 SMP を有効化すると、ブートメッセージで、 PCI のカードに IRQ 2 とか IRQ 16 とか、 謎の IRQ が割り当てられてしまっているように見えるのですが、 これって正常な動作なんでしょうか?
まあいいや、SMP を有効化したときの dmesg の該当部分はこんな感じ (全体はこちら)。 で、なぜか irq 2 なんですね (ちなみに、ユニプロセッサでの dmesgでは、 irq 5 となっています)。
skc0: <SysKonnect Gigabit Ethernet> port 0xb800-0xb8ff mem 0xfc8fc000-0xfc8fffff irq 2 at device 3.0 on pci3 skc0: SysKonnect SK-NET Gigabit Ethernet Adapter SK-9844 SX dual link sk0: <XaQti Corp. XMAC II> on skc0 sk0: Ethernet address: 00:00:5a:99:4b:5c miibus0: <MII bus> on sk0 xmphy0: <XaQti Corp. XMAC II gigabit interface> on miibus0 xmphy0: 1000baseSX, 1000baseSX-FDX, auto sk1: <XaQti Corp. XMAC II> on skc0 sk1: Ethernet address: 00:00:5a:99:4b:5d miibus1: <MII bus> on sk1 xmphy1: <XaQti Corp. XMAC II gigabit interface> on miibus1 xmphy1: 1000baseSX, 1000baseSX-FDX, auto
面白い構成ですね。 何か、カードの上のパターンそのものって感じ。 結局ネットワークインターフェースは、 sk0 と sk1 になります。
% ifconfig -a sk0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500 ether 00:00:5a:99:4b:5c media: autoselect (1000baseSX <half-duplex>) status: active supported media: autoselect 1000baseSX <full-duplex> 1000baseSX none sk1: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500 ether 00:00:5a:99:4b:5d media: autoselect (1000baseSX <half-duplex>) status: active supported media: autoselect 1000baseSX <full-duplex> 1000baseSX none fxp0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500 ether 00:30:48:10:63:2a media: autoselect (100baseTX <full-duplex>) status: active supported media: autoselect 100baseTX <full-duplex> 100baseTX 10baseT/UTP <full-duplex> 10baseT/UTP faith0: flags=8000<MULTICAST> mtu 1500 gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280 gif1: flags=8010<POINTOPOINT,MULTICAST> mtu 1280 gif2: flags=8010<POINTOPOINT,MULTICAST> mtu 1280 gif3: flags=8010<POINTOPOINT,MULTICAST> mtu 1280 lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384 inet6 fe80::1%lo0 prefixlen 64 scopeid 0x9 inet6 ::1 prefixlen 128 inet 127.0.0.1 netmask 0xff000000 ppp0: flags=8010<POINTOPOINT,MULTICAST> mtu 1500
それにしても、FreeBSD-current (しかも SMPng) だと、 ps aux の結果も実ににぎやかですねぇ。
% ps aux USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME COMMAND root 10 99.0 0.0 0 0 ?? RL 1:56AM 347:49.40 (idle: cpu1) root 11 99.0 0.0 0 0 ?? RL 1:56AM 347:50.07 (idle: cpu0) root 12 0.0 0.0 0 0 ?? WL 1:56AM 0:00.06 (swi1: net) root 13 0.0 0.0 0 0 ?? WL 1:56AM 0:23.67 (swi6: clock) root 14 0.0 0.0 0 0 ?? WL 1:56AM 0:00.00 (swi4: vm) root 15 0.0 0.0 0 0 ?? DL 1:56AM 0:02.84 (random) root 16 0.0 0.0 0 0 ?? WL 1:56AM 0:00.00 (swi2: camnet) root 17 0.0 0.0 0 0 ?? WL 1:56AM 0:00.00 (swi3: cambio) root 18 0.0 0.0 0 0 ?? WL 1:56AM 0:00.00 (swi5: task queue) root 19 0.0 0.0 0 0 ?? WL 1:56AM 0:00.07 (irq2: skc0) root 20 0.0 0.0 0 0 ?? WL 1:56AM 0:00.00 (irq16: fxp0) root 21 0.0 0.0 0 0 ?? WL 1:56AM 0:00.15 (irq14: ata0) root 22 0.0 0.0 0 0 ?? WL 1:56AM 0:00.00 (irq15: ata1) root 23 0.0 0.0 0 0 ?? WL 1:56AM 0:00.00 (irq1: atkbd0) root 24 0.0 0.0 0 0 ?? WL 1:56AM 0:00.00 (irq6: fdc0) root 25 0.0 0.0 0 0 ?? WL 1:56AM 0:00.00 (swi0: tty:sio) root 2 0.0 0.0 0 0 ?? DL 1:56AM 0:00.04 (pagedaemon) root 3 0.0 0.0 0 0 ?? DL 1:56AM 0:00.00 (vmdaemon) root 4 0.0 0.0 0 0 ?? DL 1:56AM 0:00.24 (bufdaemon) root 5 0.0 0.0 0 0 ?? DL 1:56AM 0:00.44 (syncer) root 84 0.0 0.0 208 23 ?? Is 1:56AM 0:00.00 adjkerntz -i (以下略)
近場に PCI64 の Gigabit Ethernet マシンがないので、性能測定は全然できない。 うーん、せっかく PCI64 のモンスターマシンなのに、 相手がいないのも辛い。