*IBM pSeries Servers* *Microcode Update for Ultrastar 15K147 36/73/146 GB* *SCSI Hard Disk Drive* *Microcode Level S43C* DATE: September 18, 2007 *Table of Contents* 1. General Information <#_Toc96833341> 1.1 Disk Drives Affected <#_Toc96833342> 1.2 Microcode Change History <#_Toc96833343> 2. AIX Operating System <#_Toc96833344> 2.1 Installation Time <#_Toc96833345> 2.2 Determine Drive Model, FRU&PN and Current Microcode Level <#_Toc96833346> 2.2.2 SCSI Drives attached to PCI SCSI RAID Controllers <#_Toc96833347> 2.3 Transferring and Unpacking the Microcode Update Package <#_Toc96833348> 2.3.1 Internet AIX self extracting file (.bin) <#_Toc96833349> 2.3.2 Internet RPM package <#_Toc96833350> 2.3.3 CD-ROM <#_Toc96833351> 2.4 Microcode Download Procedure <#_Toc96833352> 2.4.1 SCSI Drives Attached to SCSI Adapter <#_Toc96833353> 2.4.2 SCSI Drives Attached to PCI RAID Adapter <#_Toc96833354> 3. Linux Operating System <#_Toc96833356> 3.1 Linux 2.6 kernel(such as SuSE SLES 9 or RHEL 4) <#_Toc96833357> 3.2 RHEL 3 <#_Toc96833358> 3.3 SLES 8 SP4 <#_Toc96833359> *4. Code level S370 (and below) Problem description and recovery procedure <#_4._Code_level>* *===============================================================* 1. General Information The Microcode files provided in this package are *only* for use when installing disk drive microcode to a disk drive installed in a pSeries Server or 2104 drawer using the AIX or Linux Operating System.** 1.1 Disk Drives Affected Below is the list of microcode files in this package, these files are for use with the following pSeries SCSI hard disk drive ONLY: NOTE: To insure the integrity of microcode files, please check the checksum value of each file after extraction Size Disk Drive Model FRU# P/N (VPD) Microcode File Name Checksum ----- -------------------------- ---------- ---------- ------------------------------------- ------------- 36GB HUS151436VL3800 80P3159 26K5178 HUS1514.56503031.53343343 64382 36GB HUS151436VL3800 80P3161 26K5179 HUS1514.56503032.53343343 64382 36GB HUS151436VL3800 97P1663 26K5128 HUS1514.56503033.53343343 64382 36GB HUS151436VL3800 80P6422 26K5164 HUS1514.56503034.53343343 64382 36GB HUS151436VL3800 55P4098 26K5126 HUS1514.56503035.53343343 64382 36GB HUS151436VL3800 03N5275 26K5530 HUS1514.56505230.53343343 64382 36GB HUS151436VL3800 03N5277 26K5570 HUS1514.56505230.53343343 64382 73GB HUS151473VL3800 80P3163 26K5180 HUS1514.56503031.53343343 64382 73GB HUS151473VL3800 80P3165 26K5181 HUS1514.56503032.53343343 64382 73GB HUS151473VL3800 97P1665 26K5129 HUS1514.56503033.53343343 64382 73GB HUS151473VL3800 80P6424 26K5165 HUS1514.56503034.53343343 64382 73GB HUS151473VL3800 55P4103 26K5127 HUS1514.56503035.53343343 64382 73GB HUS151473VL3800 03N5765 26K5566 HUS1514. 56505230.53343343 64382 73GB HUS151473VL3800 03N5280 26K5531 HUS1514. 56505230.53343343 64382 73GB HUS151473VL3800 03N5282 26K5571 HUS1514. 56505230.53343343 64382 146GB HUS151414VL3800 80P3911 26K5182 HUS1514.56503031.53343343 64382 146GB HUS151414VL3800 97P1667 26K5130 HUS1514.56503033.53343343 64382 146GB HUS151414VL3800 80P6426 26K5166 HUS1514.56503034.53343343 64382 146GB HUS151414VL3800 97P1667 26K5130 HUS1514.56503033.53343343 64382 146GB HUS151414VL3800 03N5766 26K5567 HUS1514. 56505230.53343343 64382 146GB HUS151414VL3800 03N5285 26K5532 HUS1514. 56505230.53343343 64382 146GB HUS151414VL3800 03N5288 26K5572 HUS1514. 56505230.53343343 64382 1.2 Microcode Change History Release date Code level Change Description Sept, 2007 S43C For the part numbers listed above, an undetected loss of data can occur. The probability of this happening is low, but the code update should be applied to prevent the event from occurring. IBM strongly recommends that you apply this update. July, 2007 S43A Fixed a problem related to HACMP (High Availability, disk drive sub-system shared between two nodes). When primary node fails, HA backup takeover process fails to take over resources. June 2, 2006 S430 Changed ?read look ahead? routine to improve drive?s read performance in certain applications. The specific application does what is called disk "stride" or ?skip? read; example of striding is to read 4KBytes of data, skip the next 4Kbytes, read the following 4KBytes, and so on. This change does not effect normal ?random? or ?sequential? read performance. April 21, 2006 S3BD Substantial performance improvement when drive is used in a multi-initiator (HACMP) environment. Also, shortened SCSI bus idle after SCSI bus reset. With previous level of codes, SCSI host adapter waits about 7 seconds after SCSI bus reset to send command to the drive. This would cause performance degradation if there are many SCSI bus resets. This idle time is shortened to about 250msec. Sept. 9, 2005 S3B0 Error recovery enhancements to improve drive?s reliability and performance July 14, 2005 S3AA In rare situations, drive may not come ready when system is powered up after a sudden power lose (system power is removed without proper system shutdown). May 20, 2005 S37A Microcode bug fix: In some PCI-X Raid Array configurations, drives configured as Raid members may go missing ?defined?. A detailed description of this problem with microcode download procedure to the ?missing? pdisks is available at the end of this document. This level of code is an absolute minimum requirement if installing new PCI-X Raid Adapter. May, 2005 S370 Changes made to ?error recovery? and ?idle sweep? functions to enhance drive reliability Feb. 2005 S260 Initial Release =============================================================== 2. AIX Operating System 2.1 Installation Time /Approximately 20 minutes if drive is part of rootvg(using Diagnostics CD); Approximately 5 minutes/drive if drive is not part of rootvg(using concurrent diagnostics)./ 2.2 Determine Drive Model, FRU&PN and Current Microcode Level 2.2.1 SCSI Drives attached to SCSI Controllers and PCI-X RAID Adapters To see the drive type and current microcode level, Execute the following command: lscfg -vl hdisk* |pg ; For drives NOT configured for RAID lscfg ?vl pdisk* |pg ; For drives configured for RAID DEVICE LOCATION DESCRIPTION hdisk10 3S-08-00-9,0 16 Bit LVD SCSI Disk Drive (146800MB) Manufacturer................IBM Machine Type and Model......HUS1514VL3800 FRU Number.................. 80P3911 ROS Level and ID............ *53343343* Serial Number...............008010B1 EC Level....................00000Q1A10 Part Number................. 26K5182 Device Specific.(Z0)........000004129F00013E Device Specific.(Z1)........*S43C* Device Specific.(Z2)........0068 Device Specific.(Z3)........04047 Device Specific.(Z4)........0001 Device Specific.(Z5)........22 Device Specific.(Z6)........00000Q1A10 If the data returned in the ?Part Number?, ?FRU Number?, and ?Machine Type and Model? fields match the one listed in section 1.1 AND the "ROS Level and ID...." field of that data is below "*53343343*", this microcode applies. If this level is already installed then the "ROS Level and ID...." shows "*53343343*" *Note*: Drive microcode level in ?ROS Level and ID ?? field is displayed in Hex value of ASCII characters in VPD data. Each alpha-numeric ASCII character converts to a 2-digit hex number. For example in VPD displayed above, 53 Hex= ASCII character "*S*"; 34Hex= ASCII character "*4*"; 33 Hex=ASCII character "*3*"; 43 Hex=ASCII character "C", microcode level is "*S43C*". Also note that the microcode level "*S43C*" is displayed in ?Z1? field. 2.2.2 SCSI Drives attached to PCI SCSI RAID Controllers At AIX command line, type: Diag Select "Task Selection" from diagnostics menu. Select "PCI RAID Physical Disk Identify" Select SCSI RAID Adapter (press enter, then F7 to Commit) This will display the Vital Product Data for Physical Disk drives attached to the RAID adapter. =============================================================== 2.3 Transferring and Unpacking the Microcode Update Package 2.3.1 Internet AIX self extracting file (.bin) a) Make a directory on an AIX system to receive the AIX format file. Enter: mkdir /tmp/fwupdate b) Transfer the AIX format file to /tmp/fwupdate directory (using "Save as ..."). You'll see the filename is 15k147.bin c) Unpack the file by executing the instructions below. Enter the commands: cd /tmp/fwupdate chmod +x 15k147.bin ./15k147.bin [Don't overlook the periods (.) in the above command.] The directory 15k147 with microcode files listed in section 1.1 will be added to /tmp/fwupdate. d-Enter the following command to copy the microcode files to " /etc/microcode " directory : cp /tmp/fwupdate/15k147/HUS1514* /etc/microcode e- If transferring files to a different system using floppy diskettes, use the following procedure to copy files to diskette Note: Don't overlook the complete path of microcode files, AIX Diag microcode download _will not work if files are not copied with complete path onto the diskette_. Enter the following command to copy microcode file(s) onto a floppy diskette ls /etc/microcode/ microcodefilename | backup -ivf /dev/rfd0 where microcodefilename is microcode file that is needed, for example: ls /etc/microcode/ HUS1514.56503031.* *53343343| backup -ivf /dev/rfd0 2.3.2 Internet RPM package *Note:* The instructions that follow are specific AIX commands. AIX commands are CASE (lower and upper) SENSITIVE, and */must/* be entered exactly as shown, including filenames. a) Make a directory on an AIX system to receive the RPM format file. Enter: mkdir /tmp/microcode b) Transfer the RPM format file to the /tmp/microcode directory (using "Save as ..."). You'll see the filename is *15k147-S43C-AIX.rpm* c) Unpack the file by executing the instructions below: Enter the commands: *rpm -ihv ?ignoreos 15k147- S43C-AIX.rpm* The file size and checksum will be verified. The microcode files will be added to /etc/microcode/ 2.3.3 CD-ROM Create microcode CD using instruction and tool available on IBM web site (CD-ROM Image): http://techsupport.services.ibm.com/server/mdownload2/cdimage.html Once CD is created, use concurrent or stand alone microcode download procedure in section 2.4, or copy files onto your local disk. Notes: 1. RPM packaged microcode files will be copied to "/tmp/microcode/RPM" 2. Microcode files will be copied to /usr/lib/microcode 3. "/etc/microcode" is a symbolic link to "/usr/lib/microcode". 4. If permission does not allow the copy to the above stated directory or file then the user will be prompted for a new location. *========================================================* 2.4 Microcode Download Procedure 2.4.1 SCSI Drives Attached to SCSI Adapter /Warning:/ Do not power off the system or the drive during microcode download as this may permanently damage the disk drive *NOTE:* Please save current and older versions of the microcode update files in case you need to restore your system. /Caution:/ The microcode download process is nondestructive to the hard disks; however, as a precaution, ensure that a backup operation has been performed on the affected systems PRIOR to the microcode installation. /Can microcode be installed Concurrently?/ AIX level 5.1 and above supports concurrent microcode download on all drives, including drives that are part of rootvg. AIX level 4.33 and below does not support concurrent microcode download if drive is part of rootvg, microcode download can ONLY be performed in service mode(stand alone) using diagnostics CD. If disk is not part of rootvg, microcode download can be performed cuncurrently as long as drive is not in use. /Is system reboot needed to activate the microcode: /Yes if stand alone diagnostics is used, NO if concurrent diagnostics is used. /Installation Time: /Approximately 20 minutes/drive if stand alone diagnostics is used(using Diagnostics CD); Approximately 5 minutes/drive if consurrent diagnostics is used. 2.4.1.1 AIX level 5.1 and above 2.4.1.2.1 Concurrent Download 1. Type diag at the prompt. 2. Select the "Task Selection" from diagnostics menu. 3. Select "Microcode Download" from "Task Selection" menu. 4. Select resource that microcode will be applied to(hdisk? For physical disk, pdisk for RAID configured disks) and press ENTER, then press "F7" to commit.. 5- A small screen displays the message " *** NOTICE*** The microcode installation occurs while the attached drives are available for use..... " Press enter to continue 6. Select the source for microcode, use arrow key to go up/down, Enter to continue. /etc/microcode cd0 fd0 - Use /etc/microcode if "restore" command is used to copy files from diskette onto the disk - Use cd0 (if CD-ROM is used) or fd0 (if floppy diskette is used) NOTE: A prompt will ask you to insert the microcode diskette in diskette drive(if Diskette is selected above). Insert the diskette and press ENTER 7- Display shows a list of microcode files available for the selected drive, highlight option "M HUS1514xx...", the latest microcode for the drive and press ENTER. A message may warn you that current level of microcode is not available on the media, press ENTER to continue. 8. You will receive a msg. "Current Microcode is...." and "Download has completed successfully" (this may take a few minutes) 9. Return to the Tasks Selection menu and repeat this procedure for each hard disk that requires this microcode. 10. Exit diagnostic (and reboot if needed). 2.4.1.2 AIX level 4.33: This procedure is for drives that are not part of rootvg or paging space: 1. This step is optional. Microcode download can be performed either from Diskette or from Disk. To copy files from the diskette to disk, place the diskette containing microcode files into diskette drive A, at AIX Prompt type restore 2- At AIX prompt, type diag 3. Select the "Task Selection" from diagnostics menu. 4. Select "Microcode Download" from "Task Selection" menu. 5. Select resource that microcode will be applied to(hdisk?) and press ENTER. 6. Press "F7" to commit. (The current microcode level of the resource you selected earlier will be displayed at the top of the screen) 7. Make the following selections on the next screen: Select Input Device --------------------------------------- [ diskette] <---------- Disk can be used if "restore" command is used in step 1 Microcode level to download ----------------------------- [ latest] Download latest level even if ------------------------------ [ yes] current is missing NOTE: A prompt will ask you to insert the microcode diskette into the floppy drive(if Diskette is selected above). Insert the diskette which accompanies these instructions. If this level is already installed in the drive you've selected a message will let you know. A message also may come up to let you know that the Diskette(or Disk) does not have the previous level microcode file. This is true and is not required to complete the download. PRESS "F7" to commit 8. You will receive a msg. "Current Microcode is....and...Download has completed successfully" (this may take a few minutes) 9. Return to the Tasks Selection menu and repeat this procedure for each hard disk that requires this microcode. 10. Exit diagnostic. 2.4.1.2.2 Standalone (Service Mode) Download This procedure is used for all drives including rootvg or paging space drives 1. Properly shutdown the system. 2. Boot up the system in standalone diagnostics mode with the CDROM diagnostics(Use diagnostics level 4.21 or above; It is recommended to use the same level of Diagnostic CD as the AIX ). 3. Select the "Task Selection" from diagnostics menu. 4. Select "Microcode Download" from "Task Selection" menu. 5. Select resource that microcode will be applied to(hdisk?) and PRESS ENTER. 6. Press "F7" to commit. (The current microcode level of the resource you selected earlier will be displayed at the top of the screen) 7. Make the following selections on the next screen: Select Input Device --------------------------------------- [ diskette] Microcode level to download -----------------------------[ latest] Download latest level even if -----------------------------[ yes] current is missing NOTE: A prompt will ask you to insert the microcode diskette into the floppy drive. Insert the diskette which accompanies these instructions. If this level is already installed in the drive you've selected a message will let you know. A message also may come up to let you know that the Diskette(or Disk) does not have the previous level microcode file. This is true and is not required to complete the download. PRESS "F7" to commit 8. You will receive a msg. "Current Microcode is...." and "Download has completed successfully" (this may take a few minutes) 9. Return to the Tasks Selection menu and repeat this procedure for each hard disk that requires this microcode. 10. Exit diagnostic and reboot system in normal mode. * * 2.4.2 SCSI Drives Attached to PCI RAID Adapter *NOTE:* Please save current and older versions of the microcode update files in case you need to restore your system. 1. At AIX Command line type: diag 2. Select the "Task Selection" from diagnostics menu. 3. Select "Microcode Download" from "Task Selection" menu. 4. Select RAID controller from the list of resources, PRESS ENTER, then F7 to commit 5. Select "Physical Disks" and PRESS ENTER 6. A list of all Physical Disks will be displayed, select the disk that needs to be upgraded, PRESS ENTER and F7 to commit. 7. Select "Latest level" 8. Select "Disk" if files are copied to /etc/microcode directory. Select "Diskette" if microcode files are saved onto a diskette, PRESS ENTER (The current microcode level of the resource you selected earlier will be displayed at the top of the screen) 9. You will receive a message "Download has completed successfully" and "Current Microcode is" (this may take a few minutes). 10. Return to the Previous menu and repeat this procedure for each hard disk that requires this microcode. 11. Exit diagnostic and reboot system. *======================================================* 3. Linux Operating System 3.1 Linux 2.6 kernel(such as SuSE SLES 9 or RHEL 4) Microcode can be updated using the iprconfig utility. The iprconfig utility allows for multiple levels of adapter and device microcode to exist on the system at the same time. After the device to update microcode is selected, all available microcode levels are presented to choose to download. 1. a) If using SLES 9 base, install the package by typing: rpm -ivh --ignoreos 15k147-* S43C*-AIX.rpm b) If using SLES 9 SP1 or better or RHEL 4 or better, install the package by typing: rpm -ivh 15k147-* S43C*-LINUX.rpm 2. Update the microcode by typing: iprconfig Press Enter. 3. Select Download microcode and press Enter. 4. Select the device you wish to update by typing a 1 then pressing Enter. Multiple devices may be selected. 5. Select the microcode image to be downloaded to the device by typing a 1 then pressing Enter. 6. Press Enter _again_ to confirm the download (display shows ?Microcode Download in Progress? with elapsed time) 7. If multiple devices were selected, repeat from Step 5 for the next device. To check the microcode level: 1. Start iprconfig utility, 2. Select "Display hardware status" option. 3. Select disk to query by typing a 1 next to it and pressing "Enter" 4. Look at the "Firmware Version" field -------------------------------------------------------------------------- 3.2 RHEL 3*:* Microcode can be updated using the iprupdate utility. If iprupdate finds newer microcode on the system it will be downloaded to the disk. 1. Install the package by typing: rpm -ivh --ignoreos 15k147-* S43C*-AIX.rpm Press Enter. 2. Update the microcode by typing: iprupdate Press Enter. To check the microcode level: 1. Start iprconfig utility, 2. Select "Display disk hardware status" option. 3. Find the disk you wish to query and note its serial number. 4. Type "d" to get to the "Display disk unit details" screen. 5. Select disk to query by typing a 5 next to it and pressing "Enter" 6. Look at the "Firmware Version" field ------------------------------------------------------------------------- 3.3 SLES 8 SP4 Microcode can be updated using the sisupdate utility. If sisupdate finds newer microcode on the system it will be downloaded to the disk. 1. Install the package by typing: rpm -ivh --ignoreos 15k147-* S43C*-AIX.rpm Press Enter. 2. Update the microcode by typing: sisupdate Press Enter. To check the microcode level: 1. Start sisconfig utility, 2. Select "Display disk hardware status" option. 3. Find the disk you wish to query and note its serial number. 4. Type "d" to get to the "Display disk unit details" screen. 5. Select disk to query by typing a 5 next to it and pressing "Enter" 6. Look at the "Firmware Version" field 4. Code level S370 (and below) Problem description and recovery procedure Problem Description: When drives are configured as Raid Array members(pdisk, drives formatted to 522 Bytes/sector), after a cold IPL (system reboot), some members of disk array will go missing. If AIX operating system is installed on this Raid Array, system may not boot. If Raid array is used as non-OS, system will boot, but will not be able to access Raid Array. Only the drives listed above in section 1.1 with code level S370(ROS Level and ID = 53333730) or below are affected. Microcode Download procedure: Since pdisks are in "defined" state, you can not download the latest microcode using normal procedure. You must follow the following procedure to first recover ?defined? pdisks, and then download microcode. Depending upon system's Raid Array configuration, one of these procedure will enable you to recover "defined" or "missing" pdisks, and download new microcode. A. System OS (AIX) is Not installed on Raid Array AND non of the Raid Array members are on the same SCSI bus as boot drive: 1- Power on system 2- Use ?smitty? PCI-X Raid manager smitty pxdam Diagnostics and recovery options -> Unconfigure an available PCI-X SCSI Raid Controller 3- Select proper PCI-X Raid Controller and press enter to un-configure it. 4- Once Raid Controller is un-configured, then use ?Configure a defined PCI-X SCSI Raid Controller? to configure the Raid Controller 5- The above procedure will make all pdisks in available states. 6- Use ?Download Microcode to a Physical Disk?, and download microcode to pdisks. 7- IPL the system, all pdisks will show up as available. B. System OS (AIX) is installed on Raid Array OR Raid Array member(s) are on the same SCSI bus as OS drive: 1- Boot system to a Diagnostics CD 2- Choose ?Task Selection? 3- Choose ?Raid Array Manager? 4- Select ?IBM PCI-X SCSI Disk Array Manager? 5- Follow above procedure to un-configure and re-configure Raid Controller, and load microcode to pdisks. 6- IPL the system.