ZBOX nano VD01のHDDが遅い
2012/02/07(火) 25:38 NetBSD はてブ情報 はてブに登録 はてブ数

めでたく起動したZBOXですが、使っていてどうもディスクが遅い気がしてなりません。

で、ひとつ覚えのdbenchを走らせてみたところ、

Throughput 13.9741 MB/sec 5 procs

という結果。なんだこれ、KVM上のNetBSDより遅いじゃないか!

よく見ると、ディスクのドライバがpciideというgenericなドライバが使われていて、しかもPIOで動いているっぽいメッセージ。

一方で、本来使われるべきviaideドライバは認識されていないということで、viaideのソースを見たところ、どうやらチップセットを登録してあげないといけないようです。

ということで、以下のような修正を加えました。
--- sys/dev/pci/viaide.c.orig	2012-02-07 01:08:45.000000000 +0000
+++ sys/dev/pci/viaide.c	2012-02-07 08:01:25.000000000 +0000
@@ -345,6 +345,11 @@
 	  "VIA Technologies VT8237S SATA Controller",
 	  via_sata_chip_map_7,
 	},
+	{ PCI_PRODUCT_VIATECH_VX900_SATA,
+	  0,
+	  "VIA Technologies VX900 SATA Controller",
+	  via_chip_map,
+	},
 	{ 0,
 	  0,
 	  NULL,
--- sys/dev/pci/pcidevs.orig	2011-10-19 00:21:35.000000000 +0000
+++ sys/dev/pci/pcidevs	2012-02-07 01:08:04.000000000 +0000
@@ -4676,6 +4677,7 @@
 product VIATECH VT82C597AGP	0x8597	VT82C597 (Apollo VP3) CPU-AGP Bridge
 product VIATECH VT82C598AGP	0x8598	VT82C598 (Apollo MVP3) CPU-AGP Bridge
 product VIATECH VT8605AGP	0x8605	VT8605 (Apollo ProMedia 133) Host-AGP Bridge
+product VIATECH VX900_SATA	0x9001	VX900 SATA Controller
 product VIATECH K8T890_PPB_A238	0xa238	K8T890 PCI-PCI Bridge
 product VIATECH VT8633AGP	0xb091	VT8633 (Apollo Pro 266) CPU-AGP Bridge
 product VIATECH VT8366AGP	0xb099	VT8366 (Apollo KT266) CPU-AGP Bridge
すると、
viaide0 at pci0 dev 15 function 0: VIA Technologies VX900 SATA Controller (rev. 0x00)
viaide0: VIA Technologies unknown VIA ATA controller
viaide0: bus-master DMA support present
viaide0: primary channel configured to native-PCI mode
viaide0: using ioapic0 pin 21 for native-PCI interrupt
てな感じで認識され、dbenchも

Throughput 63.8846 MB/sec 5 procs

ということで4.5倍程度高速になりました!

1: tsutsui 2012年02月15日(水) 深夜0時36分

wd0 の attach message で UDMA が使われているかどうかが気になるんですが、
http://www.ceres.dti.ne.jp/tsutsui/netbsd/vx900.diff
代わりにこれ↑試してもらえませんか。

OpenBSDからするとドライバ的にはP-ATAに見えてるっぽいです
http://www.openbsd.org/cgi-bin/cvsweb/src/sys/dev/pci/pciide.c.diff?r1=1.325;r2=1.326;f=h


名前:  非公開コメント   

  • TB-URL  http://www.tokuda.net/diary/0776/tb/