Samsung SSD 840 EVO Performance Restoration on Linux

As you probably all know there was a bug in the firmware of the Samsung 840 EVO SSD drives. After a month of using performance drops heavily while accessing non-changing data. Samsung has finally released the “Restoration tool” for Linux and Mac users and there’s even an installation guide published for it which unfortunately does not tell much about transferring the image onto an USB. If you try to copy it with dd the way you would do it with any linux distro install iso, then you’ll find that you can’t boot from the resulting USB. This is because the ISO does not contain the boot sector where it should. So here are the steps:

  1. Download the ISO for Linux and Mac (at the time of this writing it is version 1.0)
  2. Postprocess the image with the isohybrid command:

    # isohybrid Samsung_Performance_Restoration.iso

  3. Plug in a USB stick
  4. If it gets auto mounted make sure you umount it
  5. Figure out the corresponding device file with this command (see the example output):
    # dmesg | tail
    [ 1430.209585] scsi6 : usb-storage 3-2:1.0
    [ 1430.209675] usbcore: registered new interface driver usb-storage
    [ 1431.209711] scsi 6:0:0:0: Direct-Access SanDisk Cruzer Blade 1.27 PQ: 0 ANSI: 6
    [ 1431.210005] sd 6:0:0:0: Attached scsi generic sg2 type 0
    [ 1431.214879] sd 6:0:0:0: [sdc] 15633408 512-byte logical blocks: (8.00 GB/7.45 GiB)
    [ 1431.216146] sd 6:0:0:0: [sdc] Write Protect is off
    [ 1431.216151] sd 6:0:0:0: [sdc] Mode Sense: 43 00 00 00
    [ 1431.216438] sd 6:0:0:0: [sdc] Write cache: disabled, read cache: enabled, doesn’t support DPO or FUA
    [ 1431.231402] sdc: sdc1
    [ 1431.234944] sd 6:0:0:0: [sdc] Attached SCSI removable disk
    #

    Based on the above output it is /dev/sdc in my case.

  6. Then transfer the resulting ISO to a USB stick:

    # dd if=Samsung_Performance_Restoration.iso of=[PATH_TO_USB_STICK] bs=4k

    where [PATH_TO_USB_STICK] is the device file from step 5

  7. Boot the system from the USB stick – you might want to press F12 or go to BIOS and align the boot device priority so it boots from the USB.
  8. When you can boot from the USB it will first update the firmware of the drive then probably moves data around so it refreshes the MLC cells (the whole process took 22 mins for my 128GB SSD)

Bug: Installing a Netbackup Media server in a HP-UX SRP-enabled environment

This is a bug I found during the installation of a Netbackup Media server. The target system was an HP-UX 11iv3 which has several SRP containers integrated into ServiceGuard. As I started the installation script on the global container, it failed with an swinstall error stating that it couldn’t set the SRP containers into maintenance mode. You should know that we plan to use the the media server from the global zone, and the client will be installed also only to the global zone.

That’s because two new options were added to the swinstall command to support the Secure Resource Partition functionality. The first one is the global_srp option, by which you can decide if the installation/removal should affect the global system. The other option is the local_srp_list which contains space separated system container names enclosed in quotes. Read More »

Configure RAID mode on a P410i

This post is the successor of the previous one, which was written on how to change your P410i controller to RAID mode. Setting the controller to RAID mode is just half the job, you need to define the RAID level and assign physical disks to it. For this you can use the drvcfg -s command at the EFI shell to get into the P410i BIOS.

  1. To determine the drv use the drivers command from EFI shell prompt.
  2. Find the SAS Host Adapter and make a note of the Driver ID from the left column. That is the drv.
  3. To determine the ctr use the drvcfg command from the efi shell prompt. Look for the SAS Host Adapter drv number and the corresponding number is the ctr:
    Read More »

Changing a P410i from HBA mode to RAID mode

So, you’ve just unboxed your freshly came Integrity server, which has a P410/P410i SAS controller. (P410i is an onboard integrated version of the same chipset.) To a P410i controller one can attach a maximum of two SAS drives, and the controller has two operation modes: either it can function as a plain SAS controller without any other intelligence, or we can have the capability of a RAID controller if we set it to RAID mode. Usually when you have to deal with brand new servers, the controller is set to SAS mode, but it is a good practice to install a system onto a hardware-based RAID 1 volume. In order to change the mode you should follow these steps:

  1. Update the firmware of the disk controller.
  2. Change the controller to RAID mode

Read More »

Checking the status of multipathing in 11iv3

A common task in a sysadmin’s life is to assist to the changes which are affecting the SAN network. At smaller organizations it could be that besides the system administrator role you also need to manage the storage side.  So here’s a post which might help you if you need to check the status of the LUN paths. For checking the availability of the LUNs, you can use the ioscan command like this:

# ioscan -P health -C disk
Class     I  H/W Path  health
===============================
disk      1  64000/0xfa00/0x1   online
disk      4  64000/0xfa00/0x6   online
disk      7  64000/0xfa00/0x7   online
disk     10  64000/0xfa00/0x8   online
disk     13  64000/0xfa00/0x9   online
disk     16  64000/0xfa00/0xa   online
disk     19  64000/0xfa00/0xb   online
...

Read More »

Recommended BladeSystem Firmware Installation Order

For HP c-class BladeSystem Enclosures if there is an OS installed to the blade, update the firmware in the following recommended order:

  1. Update the firmware of the server blades
  2. Update the firmware of the Onboard Administrators
  3. Now reboot the systems
  4. Update any offline-only firmwares like Emulex or QLogic adapters
  5. Update the firmware of the Virtual Connects using VCSU

For Blade servers without OS, the following order is recommended:

  1. Update the Onboard Administrator firmware
  2. Update the firmware of the Virtual Connect modules with VCSU
  3. Update the firmware of any server-specific components

source: hp.com

Oracle Grid Control on HP-UX: swap shortage

If you are using Oracle Grid Control on HP-UX you may have problems with swap usage. The values reported by Grid Control could be much higher as the values reported by the system trough swapinfo. Maybe it just didn’t turn out until you got a warning something like

“Swap Utilization is 100%, crossed warning (80) or critical (95) threshold.”

That’s how it looked like on our system in Enterprise Manager:

Read More »

Exporting SQL*Plus output to HTML

Nowadays I deal with Oracle databases, and I found something cool which might be of interest to you. So here is a quick way to capture the SQL*Plus output to a html file:

SQL> set markup HTML on 
SQL> spool index.html 
SQL> -- do something
SQL> spool off 
SQL> set markup HTML off

This captures the whole output in HTML format besides STDOUT into the given index.html file.

Exporting putty settings

Here is a quick howto on how to import your saved hosts in putty from one machine to another. Putty stores its settings in the windows registry. With the following one-liner typed into the “Start menu” > “Run” you can save your settings as a .reg file.

regedit /e "%userprofile%\desktop\putty.reg" HKEY_CURRENT_USER\Software\Simontatham

After this the .reg file has been created on your desktop, you should copy it to the destination host and double-click it to import.

Glance adviser scripts

The first most important thing in proactive performance tuning is to establish a baseline. This can be done by capturing performance data at normal operation. If you are familiar with the interactive glance, and want to have the output in that familiar format, you can automate data collecting with adviser scripts and have the output in an ASCII file. This is how to get started with adviser scripts:

You have a sample adviser syntax file here: /var/opt/perf/adviser.syntax

Here is a sample of mine which captures physical I/O data:

# cat glance.syntax
PRINT "---------------------", gbl_stattime, "--------------------"
DISK LOOP
PRINT bydsk_devname, " write rate: ", bydsk_phys_write_rate, " read rate: ", bydsk_phys_read_rate
#

You can run glance with this adviser script in non-interactive mode like this (with redirection you can capture the output into a file): Read More »