This manual describes SunVTSTM Version 5.0 tests that are distributed on the Sun Computer Systems Supplement CD.
The SunTM Validation and Test Suite (SunVTS) software runs multiple diagnostic hardware tests from a single user interface. SunVTS verifies the connectivity, functionality, and reliability of most hardware controllers and devices.
SunVTS is composed of many individual tests that support testing of a wide range of products and peripherals. Most of the tests are capable of testing devices in a 32-bit or 64-bit SolarisTM environment.
Use SunVTS to test one device or multiple devices. Some of the major test categories are:
Audio tests
Communication (serial and parallel) tests
Graphic/video tests
Memory tests
Network tests
Peripherals (disks, tape, CD-ROM, DVD-ROM, printer, floppy) tests
Processor tests
Storage tests
Such flexibility means that the proper test modes and options need to be selected to maximize its effectiveness. This book covers the individual test options and requirements. For overall test configuration modes and options refer to the SunVTS 5.0 User's Guide.
When an error occurs in VTS testing, the test message window displays the error number, the error description, the probable cause of the error, and the recommended actions. Because this information is displayed at the time of the error, error messages are not included in this manual.
The default installation directory for SunVTS is /opt/SUNWvts. However, when you are installing SunVTS, you can specify a different directory. Refer to the SunVTS 5.0 User's Guide for installation information.
SunVTS version 5.0 was first introduced and designed to run in the Solaris 9 operating environment. It is recommended that you run SunVTS 5.0 in the Solaris 9 operating environment.
The operating system kernel must be configured to support all peripherals that are to be tested.
Some SunVTS tests have special requirements such as the connection of loopback connectors, installation of test media, or the availability of disk space. These requirements are listed for each test in the corresponding chapter in this book.
Many individual tests make up the collection of tests in the SunVTS application. Each test is a separate process from the SunVTS kernel. Each test can be run individually from the command line or from the SunVTS user interface.
When SunVTS is started, the SunVTS kernel automatically probes the system kernel to determine the hardware devices. The devices are then displayed on the SunVTS control panel with the appropriate tests and test options. This provides a quick check of your hardware configuration, and no time is wasted trying to run tests that are not applicable to your configuration.
During testing, the hardware tests send the test status and messages to the SunVTS kernel through interprocess communication (IPC) protocols. The kernel passes the status to the user interface and logs the messages.
SunVTS has a shared object library that contains test-specific probing routines. At runtime, the SunVTS kernel dynamically links in and calls these probing routines to initialize its data structure with test-specific information. You can add new tests into the SunVTS environment without recompiling the SunVTS source code.
As of SunVTS 3.0, the SunVTS kernel and most tests support 32-bit and 64-bit operating environments. When the sunvts command is used to start SunVTS, the appropriate tests (32-bit or 64-bit versions) are presented.
Because each test is a separate program, you can run individual tests directly from the command line. When this is done, care must be taken to run the appropriate test (32-bit or 64-bit) that corresponds to the operating system that is running (32-bit or 64-bit). This is done by running tests from specific directories as follows:
32-bit tests--/opt/SUNWvts/bin/testname
64-bit tests--/opt/SUNWvts/bin/sparcv9/testname
The test is an actual 64-bit binary test if testname is a binary file.
The test is a 32-bit test capable of running in the 64-bit environment if testname is a symbolic link.
The SUNWvtsx package must be installed for 64-bit SunVTS support. For more information on SunVTS packages and installation procedures refer to the SunVTS 5.0 User's Guide.
If you use the sunvts command to run SunVTS, SunVTS automatically allocates 32-bit or 64-bit tests based on the 32-bit or 64-bit Solaris operating environment that is running. Therefore, the only time that you need to be concerned with the 32-bit or 64-bit operation is when you run the SunVTS kernel or SunVTS tests from the command line.
If you are not sure which operating system is running, refer to the Solaris System Administration manuals. In Solaris 9, the following command can be used to identify the application support of your system.
# isainfo -v |
The isainfo command is not available in Solaris 2.6 or earlier releases.
You can run SunVTS tests from various interfaces: The CDE graphical user interfaces, or the TTY interface. SunVTS tests can also be run individually from a shell tool command line, using the command-line syntax for each test (refer to "Running a Test From the Command Line"). Table 1-1 describes the various SunVTS user interfaces. Refer to the SunVTS 5.0 User's Guide for more information on these interfaces.
Table 1-1 SunVTS System Interfaces
SunVTS System Interfaces |
Description |
---|---|
Graphical user interfaces (GUIs) |
Users can select tests and test options by pointing and clicking with a mouse button in the CDE interface. |
TTY interface |
Users can run SunVTS from a terminal or modem attached to a serial port. This feature requires that users use the keyboard instead of the mouse, and it displays one screen of information at a time. |
Command-line execution |
Lets users run each of the SunVTS tests individually from a shell tool command line using the command-line syntax. Each test description in this book contains the corresponding command-line syntax. |
To increase or decrease a numeric value in a SunVTS CDE dialog box, you can use either the up or down arrows, or type a new value in the text box and press Return. Press Apply to apply all dialog box changes.
The common way to run SunVTS testing is through a SunVTS user interface--CDE or the TTY interface.
Test configuration, control, and results are easily accessed through buttons and dialog boxes. These buttons and dialog boxes are covered in the SunVTS User's Guide. However, the Test Parameter Options dialog box is unique for each test, and is therefore covered in this manual.
The options displayed in this menu differ for each test, but the lower set of buttons are generic and are described below.
The Test Parameter Options Dialog Box descriptions also apply to the Test Parameter Options menu in the TTY interface.
In some cases it may be more convenient to run a single SunVTS test from the command line rather than through a SunVTS user interface. The following information describes how to do this.
Unless specified, the test runs without the SunVTS kernel (vtsk). All events and errors are sent to stdout or stderr and are not logged in the log files.
When you run a test in this way, you must specify all test options in the form of command-line arguments.
There are two types of command-line arguments:
Standard arguments--common to all tests. Refer to Table 1-3 for details.
Test specific arguments--unique to a specific test. Refer to the test-specific chapters in this book for details.
The standard syntax for all SunVTS tests is:
testname [-scruvdtelnf] [-i number] [-w number][-o test_specific_arguments]
64-bit tests are located in the sparcv9 subdirectory: /opt/SUNWvts/bin/sparcv9/testname. If a test is not present in this directory, then it may only be available as a 32-bit test. For more information refer to "32-Bit and 64-Bit Tests".
The following table defines the standard SunVTS command-line arguments:
Table 1-3 Standard Command-Line Arguments
Argument |
Description |
---|---|
-s |
Runs a test as though it were invoked from the SunVTS kernel (vtsk). The default is to send the output to stdout or stderr. |
-c |
Enables a core image of the test process to be created in the current working directory upon receipt of certain signals, otherwise those signals are caught and handled to prevent a core from being generated. The default is to disable the creation of a core image. |
-r |
Enables run on error so that when an error occurs, the test continues with the next test sequence instead of exiting. The default is false. |
-u |
Displays command-line usage information. |
-v |
Runs the test in Verbose mode and displays messages with more detailed information about the testing process. The default is false. |
-d |
Runs the test in debug mode and displays messages to help programmers debug their test code. The default is false. |
-t |
Runs the test in test Trace mode and displays messages that track function calls and sequences currently in use by the test code. The default is false. |
-e |
Runs the test in Stress mode by increasing the system load. The default is false. |
-l |
Runs the test in Online Functional mode. This is the same mode that tests run in when executed with the vtsui.online command. It is a non-intrusive version that will not significantly affect other applications. See the note below. The default is true. |
-n |
Runs the test in Connection mode. See the note below. The default is false. |
-f |
Runs the test in full Functional test mode. This mode assumes that the test has complete control of the device under test. See the note below. The default is false. |
-i number |
Defines the number of instances for scalable tests. |
-w number |
For scalable tests, defines to which instance the test is assigned. |
-o |
Used to indicate that the options and arguments that follow are test specific. |
Separate each test-specific argument by commas, with no space after each comma.
If you choose to specify a test mode with the l, n, or f option, specify only one option at a time because only one test mode can be selected at a time.
There are test-specific arguments, as described in Table 1-4. Test-specific arguments follow the format specified in the getsubopt(3c) man page. For information about test-specific arguments refer to the specific test chapter in this book.
Table 1-4 SunVTS Test-Specific Arguments
Argument |
Description |
---|---|
-o |
Separate each test-specific argument by commas, with no space after the each comma. For example: #./sample -v -o dev=/dev/audio,volume=78
The test option format is specified by the man page getsubopt(3C). |
Before running a frame buffer test, determine whether the test requires frame buffer locking. Not all frame buffer tests have a locking option. Some tests set the lock automatically. Check the test chapter for each individual test to see if this step is needed. If locking is required, you can set the lock in one of two ways:
If you are using the CDE SunVTS interface, go to the Option menu of the graphic test and select Enable for the frame buffer locking option.
If you are working from the command line, you can enable frame buffer locking with the lock=e/d option. For example, to run the generic frame buffer test (fbtest) with a locked frame buffer, type:
# ./fbtest -o dev=cgthree0,lock=enable |
(See the test command line argument descriptions in this manual.)
If frame buffer locking is disabled (unlocked) on frame buffers that are running vtsui, or you move the mouse, you will receive false error messages. Even a slight mouse movement can cause a test to fail.
Both the screen saver option and the system save/resume option of Power Management must be disabled on the system being tested before conducting any frame buffer test.
If you are using either the CDE or the Open Windows interface for SunVTS, do not conduct frame buffer tests through the dtlogin window. Log in as root and disable the auto-logout option.
Do not run TTY mode and frame buffer tests concurrently on the console monitor. The frame buffer test may fail.
The following rules apply when you test multiple frame buffers (displays) simultaneously:
Only the console monitor can run the window environment (such as CDE). The console monitor is the monitor connected to the frame buffer appointed by /dev/fb. SunVTS enables frame buffer locking on the console monitor by default.
The frame buffer that is running the window environment must have window locking enabled to avoid false test failures. All other frame buffers must have window locking disabled.
If you start sunvts or vtsk from a screen other than the console monitor, frame buffer locking is not available. In this case:
disable the window locking option on the remote screen to d.
enable frame buffer locking for the console monitor, as shown in the example above. The SunVTS user interface cannot display on a monitor if locking is disabled.
Do not run any graphic programs (including vtsui) on the remote frame buffer during graphic testing.