Sun Microsystems, Inc.  Sun System Handbook - ISO 3.4 June 2011 Internal/Partner Edition
   Home | Current Systems | Former STK Products | EOL Systems | Components | General Info | Search | Feedback

Asset ID: 1-72-1017619.1
Update Date:2010-10-06
Keywords:

Solution Type  Problem Resolution Sure

Solution  1017619.1 :   Sun StorEdge[TM] T3+/6120/6320 logging excessive “unsupported opcode 35” messages when attached to Microsoft Windows 2000 hosts  


Related Items
  • Sun Storage 6320 System
  •  
  • Sun Storage T3 Array
  •  
  • Sun Storage T3+ Array
  •  
  • Sun Storage 6120 Array
  •  
Related Categories
  • GCS>Sun Microsystems>Storage - Disk>Modular Disk - 6xxx Arrays
  •  
  • GCS>Sun Microsystems>Storage - Disk>Modular Disk - Other
  •  

PreviouslyPublishedAs
228795


Symptoms
In multi-platform SAN configurations where Microsoft Windows 2000 systems are attached to Sun StorEdge[TM] T3+/6120 or 6320 arrays, it is possible for the array to log repeated OP 35 Invalid command opcode messages into the syslog file. In some cases the number of messages can be so high that they fill the entire log file, which means other important messages are lost.
Example:

Aug 04 07:36:04 FCC0[1]: N: u1ctr unsupported opcode 35 lun 4
Aug 04 07:36:04 FCC0[1]: N: u1ctr (ITL 9 0 4 TT 20 TID 4C28 OP 35) Invalid command opcode
Aug 04 07:36:22 FCC0[1]: WARNING: 30 messages were dropped


Resolution
Different SCSI commands are represented by different operation codes (opcodes), as defined by the SCSI specification.

See http://www.t10.org/lists/2op.htm  SCSI Command Operation Codes  for a list of all possible opcodes.

Opcode 35 is  SYNCHRONIZE CACHE(10) . It is a command that data in the array's cache memory should be written out to physical disk. The implementation of this command is optional, and the Sun StorEdge[TM] T3+/6120 and 6320 arrays do not support it. Cache management is a function of the array and not of the attached hosts. If the array receives this command from a host, it will not action it, but it will log the  Invalid command opcode  message.

To prevent these messages, the host needs to stop sending these unsupported commands. Firstly, determine the host which is sending the  SYNCHRONIZE CACHE  commands. The message itself has some information to help do this :

Aug 04 07:36:04 FCC0[1]: N: u1ctr (ITL 9 0 4 TT 20 TID 4C28 OP 35) Invalid command opcode

The  ITL  information in this message is the SCSI command's  Initiator, Target, LUN  information. In this example : Initiator 9, Target 0, LUN 4. This confirms the command was issued by the host registered on the array as initiator 9.

To determine the WWN of initiator 9, look for messages in the history of the log file   either syslog or syslog.OLD   showing the registration of this initiator e.g. :

Aug 02 13:42:50 FCC0[1]: N: u1ctr :LMK:1st time registered WWN = 210000e08b12eb6c, id = 9

So, in this case the host which has an initiator (fibre channel host bus adapter card) with a WWN of 210000e08b12eb6c is responsible for sending the  SYNCHRONIZE CACHE  commands.

If this is a Microsoft Windows 2000 host then see if the  Write Cache Enabled  setting is enabled for the T3+/6120/6320 devices(s) as follows :

  • Right-click on  My Computer  and select  Properties 

  • Click the  Hardware  tab and then click on  Device Manager 

  • Double-click the  Disk Drives  branch, expanding it

  • Right-click on the device(s) from the T3+/6120/6320 array, and select  Properties 

  • On the  Disk Properties  tab, confirm if  Write Cache Enabled  is checked

If the  Write Cache Enabled  option is checked, this means Windows is under the impression that the array's write-cache is under its control for that device. As a result, Windows is trying to flush the cache on a regular basis by sending the  SYNCHRONIZE CACHE  commands to the array. The  Write Cache Enabled  option can be disabled by unchecking the box, however, after a host reboot the option will be automatically enabled again, so it will need to be disabled manually for every device from the array after every host reboot.

The long term solution is an update from Microsoft that provides the  Power Protected  write cache option for a device. With this enabled via the  dskcache  utility for every StorEdge[TM] T3+/6120 or 6320 device, the Window's disk driver will no longer issue any cache management commands to the array.

For more information on this update and the  dskcache  utility, see the Microsoft Knowledge Base articles 332023 and  811392 :

KB 332023 - Slow Disk Performance When Write Caching Is Enabled - http://support.microsoft.com/kb/332023

KB 811392 - Obtain the Dskcache.exe Tool to Configure the  Power Protected  Write Cache Option - http://support.microsoft.com/kb/811392

Since this  Power Protected  write cache option is set on a per-device basis, and not an array basis, if additional luns are later configured on the StorEdge[TM] T3+/6120/6320 array for the Windows host, then the  Power Protected  write cache option will need to be enabled again for each new device.



Relief/Workaround




Product
Sun StorageTek 6120/6320 Controller Firmware 3.2
Sun StorageTek T3+ Array
Sun StorageTek T3 Array
Sun StorageTek 6320 System
Sun StorageTek 6120 Array

Internal Comments
This solution was tested successfully on a Windows 2000 host with Service Pack 4.



Opcode 35, Windows, Microsoft, SAN, T3, 6120, 6320, write, cache, synchronize
Previously Published As
79984

Change History
Date: 2006-01-23
User Name: 71396
Action: Update Canceled
Comment: *** Restored Published Content *** from ssh audit update
Version: 0
Date: 2006-01-23
User Name: 71396
Action: Update Started
Comment: Updaing metadata per SSH audit

Attachments
This solution has no attachment
  Copyright © 2011 Sun Microsystems, Inc.  All rights reserved.
 Feedback