Jan 13, 1999 onl7v2: Solaris 2.6 cc ドライバのテスト システム・トラブルの処置 --- cc ドライバの実行#05 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ (http://www-online.kek.jp/~inoue/CAMAC/ onl7v2/Solaris2.6/trouble-step05.txt) 高エネルギー加速器研究機構 素粒子原子核研究所 物理、オンライングループ 井上 栄二 (1). 現状確認 (A). 英語版 Soalris2.6 & VMEドライバ v2.2.2 が届いた。 (B). CPU-7V に Solaris2.6 のシステムをインストールした。 (C). /etc の下の各設定、および /export/home の作成をやった。 (D). Solaris2.6用の VMEドライバ、FRCvme-2.2.2 をインストールした。 (E). onl7v2 に ccドライバをインストールする。 (G). サンプル・プログラムを実行した。 (G-1). 24ビットのシングル・アクション read/writeプログラム、cam1は 正常終了した。 (G-2). 割り込み処理プログラム、cam3 は正常終了した。 (G-3). 16ビットのブロック転送 read/writeプログラム、cam2 は ok。 (G-4). 24ビットのブロック転送 read/writeプログラム、cam2 は ok。 (G-5). シングル・アクション read/write実行時の、リターン値を調べた。 (H). onl7v2 上で、シングルアクション、割り込み、ブロック転送の実行速度 を調べた。 (I). シングルアクションの実行に要する時間を、精度を上げて測定した。 (J). Dhrystone ベンチマーク・プログラムを実行した。 (K). Solaris2.6 のシステムが立ち上がれなくなった。 システムを インストールし直した。 (L). /etc の下の各設定、および /export/home の作成をやった。 (M). onl7v2 に Solaris2.6用の VMEドライバ、FRCvme-2.2.2 をインストール し直した。 (N). onl7v2 に ccドライバをインストールし直した。 (2). ここでやるべきこと onl7v2 上で ccドライバの動作確認をするために、サンプル・プログラムを 実行する。 (3). サンプル・プログラムの実行 (3-1). cam1 の実行 onl7v2[45]% pwd /export/home/onl7v2/inoue/CAMAC/Driver/FORCE-5V-sol2.5 onl7v2[46]% cam1 5 Input n a f (data)>3 0 0 return value = 0(Hex) N=3 A=0 F=0 Q=1 X=1 Data:000000(Hex) 00000000(Dec) Input n a f (data)>3 0 16 7777 return value = 0(Hex) N=3 A=0 F=16 Q=1 X=1 Data:001E61(Hex) 00007777(Dec) Input n a f (data)>3 0 0 return value = 0(Hex) N=3 A=0 F=0 Q=1 X=1 Data:001E61(Hex) 00007777(Dec) Input n a f (data)>3 0 16 0 return value = 0(Hex) N=3 A=0 F=16 Q=1 X=1 Data:000000(Hex) 00000000(Dec) Input n a f (data)>3 0 0 return value = 0(Hex) N=3 A=0 F=0 Q=1 X=1 Data:000000(Hex) 00000000(Dec) onl7v2[47]% ok. 正常終了した。 (3-2). cam3 の実行 onl7v2[47]% cam3 *** Now waiting LAM ... N=3 Loop=10 Timeout=0 sec Interrupted !! count=1 Interrupted !! count=2 Interrupted !! count=3 Interrupted !! count=4 Interrupted !! count=5 Interrupted !! count=6 Interrupted !! count=7 Interrupted !! count=8 Interrupted !! count=9 Interrupted !! count=10 *** cam3 nomal end. onl7v2[48]% onl7v2[48]% cam3 *** Now waiting LAM ... N=3 Loop=10 Timeout=0 sec Interrupted !! count=1 Interrupted !! count=2 Timeout !! count=3 <-- ここで、故意にタイムアウトを起こしてみた。 Timeout !! count=4 <-- ここで、故意にタイムアウトを起こしてみた。 Interrupted !! count=5 Interrupted !! count=6 Timeout !! count=7 <-- ここで、故意にタイムアウトを起こしてみた。 Timeout !! count=8 <-- ここで、故意にタイムアウトを起こしてみた。 Timeout !! count=9 <-- ここで、故意にタイムアウトを起こしてみた。 Interrupted !! count=10 *** cam3 nomal end. onl7v2[49]% ok. 正常終了した。 (3-3). cam2 の実行 (3-3-1). VME slave window の設定をやる onl7v2# pwd /platform/sun4m/kernel/drv onl7v2# ls VME dma mcp.conf profile.conf sx_cmem.conf VME.conf fd mcpp rootnex tcx VME_fga5000 id mcpp.conf sbus vme VME_s4 id.conf mcpzsa sbusmem vmemem bwtwo iommu mcpzsa.conf sbusmem.conf vmemem.conf cgeight ipi3sc mic stc zs cgfourteen ledma obio stc.conf zsh cgsix leo pmc sx zsh.conf cgthree mcp pn sx_cmem onl7v2# ls -l VME* -rwxr-xr-x 2 root sys 204112 Jan 6 14:37 VME -rw-r--r-- 1 root sys 1810 Nov 21 1997 VME.conf -rwxr-xr-x 2 root sys 204112 Jan 6 14:37 VME_fga5000 -rwxr-xr-x 1 root sys 170744 Jan 15 1998 VME_s4 onl7v2# mv VME.conf VME.conf.org onl7v2# cp VME.conf.org VME.conf onl7v2# ls -l VME.conf* -rw-r--r-- 1 root other 1810 Jan 12 16:11 VME.conf -rw-r--r-- 1 root sys 1810 Nov 21 1997 VME.conf.org onl7v2# chgrp sys VME.conf onl7v2# ls -l VME.conf* -rw-r--r-- 1 root sys 1810 Jan 12 16:11 VME.conf -rw-r--r-- 1 root sys 1810 Nov 21 1997 VME.conf.org onl7v2# vi VME.conf # %Z%$RCSfile: VME.conf,v $ $Revision: 1.5.2.1 $ %D% FRC # # vmewin must be on a 256MB boundary # vmewin= # vmewinX= # The syntax for VME A24/A16 windows is vmexxdxx=, # The parameter is currently ignored (the full 16MB/64K range is used). # If these properties exist, the VSI is programmed with a static SBus to # VMEbus mapping. # # If you don't need this and want to save range registers in the VSI, # you should comment it out. # # The slavewin property is only needed for device drivers that want to # to do DMA via the standard DDI DMA interface calls, so that the VME nexus # can provide a VMEbus address where the device can perform DMA to. # Don't define this if you do not need it, as it will eat up a VME slave # range. Note also that the VSI will decode these addresses once the # slavewin property has been set and report VME Bus Errors if no driver # uses it! So if you get strange bus errors, check this file for the # slavewin property. # The format is: # # slavewin , , # # vme_start must be aligned to vme_size. vme_size must be 0x100000 (1MB), 2MB # 4MB, 8MB, ... 64MB. Space is a bitset of the VME_BT_xxx literals defined # in sys/vme_types. Standard values are: # 0x00020000 for a slave window in A24 space # 0x00040000 for a slave window in A32 space # # Refer to the manual for possible values for different hardware. E.g. if # you want the slave memory to accept BLT/MBLT transfers, set the # VME_BT_BLT/VME_BT_MBLT bits: # 0x00040600 for a slave window in A32 space with BLT/MBLT enabled. # #vmewin1=0x40000000 #vmewin2=0x20000000 #vmewin3=0x30000000 #vmewin=0x10000000 #vme16d16=0x0,0x10000 #vme16d32=0x0,0x10000 #vme24d32=0x0,0x100000 #vme24d16=0x0,0x100000 #slavewin=0x000000,0x100000,0x00020000 slavewin=0x000000,0x100000,0x00020000 pamc=0x10, 0x11 ; "VME.conf" 48 lines, 1848 characters onl7v2# (3-3-2). システムをリブートする onl7v2 console login: root Password: Jan 12 16:17:20 onl7v2 login: ROOT LOGIN /dev/console Last login: Fri Jan 8 15:20:34 on console Sun Microsystems Inc. SunOS 5.6 Generic August 1997 Starting OpenWindows in 5 seconds (type Control-C to interrupt) ^C# # /usr/sbin/shutdown -i0 -g0 Shutdown started. Tue Jan 12 16:17:37 JST 1999 Do you want to continue? (y or n): y Broadcast Message from root (console) on onl7v2 Tue Jan 12 16:17:38... THE SYSTEM IS BEING SHUT DOWN NOW ! ! ! Log off now or risk your files being damaged showmount: onl7v2: RPC: Program not registered Changing to init state 0 - please wait # INIT: New run level: 0 The system is coming down. Please wait. System services are now being stopped. Print services stopped. Stopping the syslog service. syslogd: going down on signal 15 umount: /net/onlsun1/home1/local busy umount: /net/onlsun1/home1/opt_ext busy umount: /net/onlsun1/home1/cern busy umount: /net/onlsun1/home3 busy umount: /net/onlsun1/export busy umount: /net/onlsun1/home1 busy umount: /net/onlsun1/home4 busy umount: /net/onlsun1/usr busy umount: /net busy Jan 12 16:18:28 snmpdx: received signal 15 umount: /net/onlsun1/home1/cern/95a busy umount: /net/onlsun1/home1/local busy umount: /net/onlsun1/home1/opt_ext busy umount: /net/onlsun1/home1/cern busy umount: /net/onlsun1/home3 busy umount: /net/onlsun1/export busy umount: /net/onlsun1/home1 busy umount: /net/onlsun1/home4 busy umount: /net/onlsun1/usr busy umount: /net busy The system is down. syncing file systems... done Program terminated Type help for more information ok ok boot -r Resetting ... SPARC CPU-7V, No Keyboard ROM Rev. 2.15.1, 64 MB memory installed, Serial #9159440. Ethernet address 0:80:42:b:53:10, Host ID: 808bc310. Rebooting with command: -r Boot device: /iommu/sbus/espdma@5,8400000/esp@5,8800000/sd@3,0 File and args: - r SunOS Release 5.6 Version Generic [UNIX(R) System V Release 4.0] Copyright (c) 1983-1997, Sun Microsystems, Inc. FRCvme VME Nexus V2.2.2 (FGA-5000 FGA-5100) NOTICE: VME: slavewin at vme=0x0, size=0x100000 space=0x2c020017 configuring network interfaces: le0. Hostname: onl7v2 Configuring the /devices directory CAMAC device driver V1.3x, 1991-1993 by Y.TAKEUCHI (T.I.T.) cc0 at VME0: vme16d16 0xff00 VME level 4 vector 0xff sparc ipl 7 vmemem0 at VME0: vme32d16 0x0 vmemem1 at VME0: vme16d16 0x0 vmemem2 at VME0: vme24d16 0x0 vmemem3 at VME0: vme32d32 0x0 vmemem4 at VME0: vme16d32 0x0 vmemem5 at VME0: vme24d32 0x0 vmeplus0 at VME0: vme16d16 0x0 and vme24d16 0x0 and vme32d16 0x0 and vme16d32 0x 0 and vme24d32 0x0 and vme32d32 0x0 and space 0x2f offset 0x0 and space 0x6f offset 0x0 and space 0x10 offset 0x0 and space 0x11 offset 0x0 and space 0x50 offset 0x0 and space 0x51 offset 0x0 vmectl0 at VME0 Configuring the /dev directory Configuring the /dev directory (compatibility devices) The system is coming up. Please wait. checking ufs filesystems /dev/rdsk/c0t3d0s5: is clean. /dev/rdsk/c0t3d0s7: is clean. add net default: gateway ICCFG1 NIS domainname is kek.jp starting rpc services: rpcbind keyserv done. Setting netmask of le0 to 255.255.252.0 Setting default interface for multicast: add net 224.0.0.0: gateway onl7v2 syslog service starting. Print services started. volume management starting. The system is ready. onl7v2 console login: ok. 正常に立ち上がった。 (3-3-3). cam2 を実行する onl7v2[44]% cam2 Input transfer mode (1:word 2:long word) >1 Input loop >5 Input mode (0:QSTOP 1:QIGNORE 2:QREPEAT 3:QSCAN) >1 Input data counts >5 Input n a f >3 0 0 MODE=1 N= 3 A= 0 F= 0 len= 5 lenr= 5 error= 0(Hex) Data( 1)= 0 0x 0(Hex) Data( 2)= 0 0x 0(Hex) Data( 3)= 0 0x 0(Hex) Data( 4)= 0 0x 0(Hex) Data( 5)= 0 0x 0(Hex) Data( 6)= 0 0x 0(Hex) Data( 7)= 0 0x 0(Hex) Data( 8)= 0 0x 0(Hex) Data( 9)= 0 0x 0(Hex) Data(10)= 0 0x 0(Hex) Input n a f >3 0 16 Input data >555 MODE=1 N= 3 A= 0 F=16 len= 5 lenr= 5 error= 0(Hex) Data( 1)= 555 0x 22B(Hex) Data( 2)= 555 0x 22B(Hex) Data( 3)= 555 0x 22B(Hex) Data( 4)= 555 0x 22B(Hex) Data( 5)= 555 0x 22B(Hex) Data( 6)= 0 0x 0(Hex) Data( 7)= 0 0x 0(Hex) Data( 8)= 0 0x 0(Hex) Data( 9)= 0 0x 0(Hex) Data(10)= 0 0x 0(Hex) Input n a f >3 0 0 MODE=1 N= 3 A= 0 F= 0 len= 5 lenr= 5 error= 0(Hex) Data( 1)= 555 0x 22B(Hex) Data( 2)= 555 0x 22B(Hex) Data( 3)= 555 0x 22B(Hex) Data( 4)= 555 0x 22B(Hex) Data( 5)= 555 0x 22B(Hex) Data( 6)= 0 0x 0(Hex) Data( 7)= 0 0x 0(Hex) Data( 8)= 0 0x 0(Hex) Data( 9)= 0 0x 0(Hex) Data(10)= 0 0x 0(Hex) Input n a f >3 0 16 Input data >777 MODE=1 N= 3 A= 0 F=16 len= 5 lenr= 5 error= 0(Hex) Data( 1)= 777 0x 309(Hex) Data( 2)= 777 0x 309(Hex) Data( 3)= 777 0x 309(Hex) Data( 4)= 777 0x 309(Hex) Data( 5)= 777 0x 309(Hex) Data( 6)= 0 0x 0(Hex) Data( 7)= 0 0x 0(Hex) Data( 8)= 0 0x 0(Hex) Data( 9)= 0 0x 0(Hex) Data(10)= 0 0x 0(Hex) Input n a f >3 0 0 MODE=1 N= 3 A= 0 F= 0 len= 5 lenr= 5 error= 0(Hex) Data( 1)= 777 0x 309(Hex) Data( 2)= 777 0x 309(Hex) Data( 3)= 777 0x 309(Hex) Data( 4)= 777 0x 309(Hex) Data( 5)= 777 0x 309(Hex) Data( 6)= 0 0x 0(Hex) Data( 7)= 0 0x 0(Hex) Data( 8)= 0 0x 0(Hex) Data( 9)= 0 0x 0(Hex) Data(10)= 0 0x 0(Hex) onl7v2[45]% ok. camacブロック転送(16ビットread/write) は正常に実行できた。 --- (6). 項目タイトル (6-1). サブ項目タイトル (6-1-1). サブサブ項目タイトル