Storage Controller Certification
Level 1 Test Plan

Introduction
Required Hardware and Software
Required Hardware Configuration
Required Software Configuration
Hardware Certification Tests
Manual Tests
Automated Tests

Introduction

This document provides detailed descriptions of the manual storage controller certification tests. After you successfully complete the manual tests described in this document, use the HCTS to run the automated tests.

When a driver supports multiple controllers, the controller that supports the most extensive feature set is designated the primary controller. Additional controllers supported by the same device driver are known as supplementary controllers.

The tests described in this document are used for one of these three purposes:

Note: The tests described in the Storage Controller Certification Level 2 Test Plan are for functional testing of controllers at Level 2 or for certifying a primary controller that has supplementary controllers supported by the same driver under test.

Run all tests on both system configurations described in the following section.

Required Hardware and Software

Make sure your system meets the general hardware and software requirements for all certifications stated in the Hardware Certification Test Suite Installation Guide.

This section describes additional hardware and software required to execute the storage controller certification tests.

Required Hardware Configuration

The minimum requirements for this configuration are as follows:

Fibre Channel

RAID

SATA

SCSI

USB Hard Drives

Back to Top


Required Software Configuration

Back to Top


Hardware Certification Tests

Run all tests as user root unless otherwise indicated in the HCTS test ReadMe file.

Manual Tests

First run the set of tests for all controllers, then run the tests specific to the storage technology of the driver under test.

Note: If you are only certifying a USB hard disk, the first set of tests for controllers does not have to be run.

All Controllers

SCSI

RAID

USB Hard Drives

SATA

Back to Top


Verify Driver Diskette Format and Contents

You only need to perform this test if you are doing one of the following:

Required Hardware

Required Software

Test Strategy

The audit_itu(1M) utility verifies the format and contents of a driver diskette created using pkg_drv(1M) or pkg_drv2patch(1M).

Test Procedure

  1. Insert the driver diskette into the diskette drive.

  2. Verify the driver diskette format and contents.

    # volcheck
    # audit_itu

Expected Results

Back to Top


Testing New Installation of Solaris and the Driver

This test verifies that the driver can be installed on the system and removed properly.

Required Hardware

Required Software

Test Strategy

Test Procedure

  1. Install the test machine with the Solaris release and the driver under test.

  2. At the initial Solaris Device Configuration Assistant screen, press F4_Add Driver and follow the instructions provided.

  3. After the driver is installed, continue installing the Solaris OS.

  4. Ensure that the test system is sliced correctly.

    Note: To specify slice layout during Solaris installation, do the following:

  5. After the Solaris installation completes, reboot the system and enter the Configuration Assistant by pressing Escape when this prompt is displayed:

    SunOS Secondary Boot version xx
    
        Solaris Booting System
    
    Running Configuration Assistant...
    Press ESCape to interrupt autoboot in 5 seconds...

  6. When the Solaris Device Configuration Assistant screen appears, press F2_Continue to display a list of device drivers loaded from the driver media that have been associated with controllers in the system.

  7. Examine the Solaris Boot screen to verify that all physical devices connected to the driver under test appear in the list.

  8. When prompted, reinsert the driver media.

  9. Use the Driver Post-Installation Checklist to verify that the driver is installed correctly.

  10. Verify that all devices connected to the controller under test can be accessed.

  11. Remove the driver from the system (see the pkgrm(1M) man page) and verify that there are no error messages.

  12. Add the driver to the system (see the pkgadd(1M) man page) and use the Driver Post-Installation Checklist to verify that the driver is installed correctly.

  13. Verify that all devices connected to the controller under test can be accessed.

  14. Reboot the system, and ensure that no error messages appear.

Expected Results

Back to Top


Driver Post-Installation Checklist

Required Hardware

Test Strategy

Test Procedure

  1. Verify that one of these two sets of files are present.
    driver_name is the name of the driver under test.

    or:
  2. Verify that entries for the installed driver appear in these files:

    For example, to locate the ncrs driver entry in the /etc/name_to_major file, type:

    # grep ncrs /etc/name_to_major
    ncrs 20

Expected Results

Back to Top


CD-ROM Support Test

Required Hardware

Test Strategy

Test Procedure

  1. Reboot the system.

  2. Press Escape to interrupt autoboot.

  3. When the Solaris Boot screen is displayed, locate the CD-ROM SCSI target ID.
    The SCSI target ID is a number between 0 and 15. Following is a sample Solaris Boot screen:

    [ ] NET : Intel Pro100/B Fast Ethernet
        on Board PCI bus 1, at Dev 1
    [ ] DISK: (*) Target 0, QUANTUM VIKING II 4.5 WSE 4110
        on Symbios Logic 53c875 SCSI on Board PCI Bus 1, atDev

    Then reboot the system again, and verify that the controller is configured correctly.

  4. After the system reboots, insert a CD into the CD-ROM drive and type these commands:

    # volcheck
    # df -k

    Examine the df command output, looking for an entry similar to this:

    /vol/dev/dsk/c1t0d0/x/y 253974 253974 0 100% /cdrom/x/y
    where x and y are directories and file names.

  5. Type:

    # mount

    Look for a CD-ROM entry similar to this:

    /cdrom/sol_9_404_x86/s0 on /vol/dev/dsk/c1t0d0/sol_9_404_x86/s0 readonly/nosetuid/nodevices/intr/largefiles/xattr/onerror=panic/dev=1740002 on Thu Sep 9 08:58:00 2004
  6. List the directory contents of the CD-ROM.

    # ls -lR /cdrom

Expected Results

Back to Top


Tape Support Test

Required Hardware

Test Strategy

Test Procedure

  1. Verify that the system is running.

  2. Insert a tape into the tape drive and reboot the system.

  3. At the shell prompt, type the following:

    # ls -l /dev/rmt

    Output similar to the following is displayed, where n is the tape drive instance:

    lrwxrwxrwx 1 root root 55 Oct 28 12:32 /dev/rmt/n ->
      ../../devices/pci@0,0/pci1011,26@a/pci1069,20@8/st@4,0:
  4. If the files are not displayed, type these commands:

    # tapes -r /dev
    # ls /dev/rmt

  5. View the output and select the tape drive device file.

    If only one tape drive is installed on the system, use /dev/rmt/0 for the file.

  6. To verify that I/O operations can be performed on the tape, type the following commands, where ksh can be substituted by the name of any file:

    # cd /tmp
    # tar cvf /dev/rmt/0 -C /bin ksh
    # tar xvf /dev/rmt/0
    # sum /bin/ksh ksh

Expected Results

Back to Top


RAID Support Test

Required Hardware

Required Software

Test Strategy

Exercise the different levels of RAID supported by the controller.

Note: The Hardware Certification Test Suite does not test the RAID management utility functions (see the Solaris Operating System Driver Design Guidelines).

Definitions for some of the different RAID types are provided for reference:

RAID 0
This RAID type is also referred to as striping. Allow at least two disk drives for this RAID level. This RAID level provides no fault tolerance. Recovering lost data is not part of this RAID implementation.
RAID 1
This RAID type is referred to as mirrored. Allow at least two disk drives for this RAID level testing. One disk is operational, and the other disk is a mirror image of the first.
RAID 5
This RAID type is referred to as Disk Striping With Distributed Parity. Allow at least three disk drives to configure this RAID level.

Test Procedure

  1. Configure RAID types using the RAID management utility available with the controller.

    Note: You must configure all the RAID types that the RAID management utility supports. If any of the RAID levels cannot be configured, the controller will not pass certification.

  2. On multi-channel controllers, you must configure packs across channels.

Expected Results

Back to Top


USB Hard Drive Verification Test

Test Strategy

This test verifies that Solaris can recognize the USB hard drive as a storage device.

Required Hardware

Test Procedure

  1. Hot plug a USB hard drive into your system.

  2. Type the following command to ensure that the USB hard drive is configurable:

    # format -e

    The output from this command is similar to the following:

    c0d0 <DEFAULT cyl 23523 alt 2 hd 64 sec 63>
    /pci@0,0/pci-ide@1f,1/ide@0/cmdk@0,0
    c2t0d0 <DEFAULT cyl 1264 alt 2 hd 10 sec 258>
    /pci@0,0/pci103c,12bc@1d,2/storage@1/disk@0,0
    

    The second disk named c2t0d0 is a USB disk.

  3. Type the following command to verify that there is a USB disk entry:

    # cfgadm

    The output of this command is similar to the following:

    Ap_Id Type Receptacle Occupant Condition
    usb0/1 unknown empty unconfigured ok
    usb0/2 unknown empty unconfigured ok
    usb1/1 unknown empty unconfigured ok 
    usb1/2 unknown empty unconfigured ok
    usb2/1 usb-storage connected configured ok
    usb2/2 unknown empty unconfigured ok
    

    The sixth row starting with usb2/1 is a USB disk.

  4. Unplug the USB hard drive.

  5. Verify that the USB disk is no longer present by typing the following command:
    # cfgadm

    The USB disk usb2/1 should no longer be there.

Expected Results

Back to Top


USB Hard Drive Partition and Format Test

Test Strategy

This test verifies that the Solaris partitions, slices, and UFS file system can be built on the USB hard drive.

Required Hardware

Test Procedure

  1. Verify that the USB hard drive under test is not mounted.

  2. Create a partition on the USB hard drive by using the following command, where c2t0s0p0 is the name of the USB disk under test:

    # fdisk /dev/rdsk/c2t0s0p0

  3. Create two slices on the partition created in the previous step using the following command:

    # format

    This command produces a list of available disks.

  4. Select the USB disk you wish to format.

  5. At the format> prompt, type partition.

    format>partition

    A partion menu displays.

  6. Select the 0 - change '0' partition option by typing 0 and follow the instructions to make the two slices.

  7. Create a UFS file system on the slices.

    # newfs /dev/rdsk/c2t0d0s0

    where c2t0d0s0 is the USB hard disk under test.

    If the newfs command completes successfully, a UFS file system can be built on the USB hard drive and the test has completed successfully.

Expected Results

Back to Top


USB Hard Drive Mount, Read, and Write Test Procedure

Test Strategy

This test verifies that the USB hard drive can be mounted, unmounted, read, and written to successfully.

Required Hardware

Test Procedure

  1. Mount one slice of the USB hard drive.

    # mount /dev/dsk/c2t0d0s0 /mp

    where c2t0d0s0 is the slice of the USB hard drive under test.

  2. Verify that the USB hard drive is mounted and verify that the c2t0d0s0 USB Hard drive slice appears in the list of mounted file systems.

    # mount

  3. Copy a file to the USB hard drive.

    # cp -rf /testfile /test.c2t0d0s0

    In this command, testfile is a generic file on your system that can be copied to the mounted slice on the USB hard drive and test.c2t0d0s0 is the USB mount point.

    Validate that the file was copied successfully.

  4. Copy a file from the USB hard drive.

    # cp -rf /test.c2t0d0s0 /tmp/

    In this command, test.c2t0d0s0 is the USB mount point. Validate that the file was copied successfully from the mount point to the destination directory.

  5. Unmount the slice.

    # umount /dev/dsk/c2t0d0s0

  6. Verify that the hard drive is no longer mounted.

    # mount

    Validate that the entry for the USB hard drive is no longer in the output.

Expected Results

Back to Top


SATA Hard Drive Verification Test

Test Strategy

This test verifies that the SATA hard drive can be recognized successfully by the system.

Required Hardware

Test Procedure

  1. Reboot or reset the power of the test machine.
  2. When the system is powering on, get into the BIOS setup. If you do not see a message telling you how to get into the BIOS setup, read the documentation for your machine. When you are in the BIOS setup, enable the support for SATA hard drives.

    For example, on the Dell OptiPlex GX270 Desktop, press F2 to get into the BIOS, and then go to the following item:

    Drive Configuration
    SATA Primary Drive

    and:

    Drive Configuration
    SATA Secondary Drive

    Change the setting of "Drive Type" from "OFF" to "AUTO".

    Change other settings if needed.

    Save changes and exit BIOS setup.

  3. Perform a verbose reconfiguration reboot of the system. To do this, enter b -rv at the prompt when the following screen messages are displayed:

    <<< Current Boot Parameters >>>
    
    Boot Path :/pci@0,0/pci-ide@1f,1/ide@0/cmdk@0,0:a
    Boot args: 
    
    Type b[file name] [boot-flags] <Enter> to boot with options 
    i <Enter>                         to enter boot with interpreter 
    <Enter>                           to boot with defaults 
    
    <<< time out in 5 seconds >>>
    
    Select (b)oot or (i)nterpreter: b -rv
  4. When the system is up, log in as user root and open a terminal to execute the following command:

    # format -e

    The output from this command should be messages such as the following about the hard disks that are recognized by the system:

    Searching for disks...done
    
    AVAILABLE DISK SELECTIONS:
           0. c0d0 <DEFAULT cyl 26005 alt 2 hd 64 sec 63>
              /pci@0,0/pci-ide@1f,1/ide@0/cmdk@0,0
           1. c2d0 <DEFAULT cyl 58118 alt 2 hd 64 sec 63>
              /pci@0,0/pci-ide@1f,2/ide@0/cmdk@0,0
           2. c3d0 <DEFAULT cyl 55872 alt 2 hd 64 sec 63>
              /pci@0,0/pci-ide@1f,2/ide@1/cmdk@0,0
    Specify disk (enter its number):

    Verify that this list includes the SATA disks. In the above example, c0d0 is the IDE disk that the system resides on, and c2d0 and c3d0 are the SATA disks attached to the SATA controller.

Expected Results

Back to Top


Copyright 2005 Sun Microsystems, Inc. All rights reserved.