All times are UTC - 5 hours [ DST ]




Post new topic Reply to topic  [ 26 posts ]  Go to page 1, 2  Next
Author Message
 Post subject: Generic Seagate HDD to NetApp HDD
PostPosted: March 14th, 2019, 11:27 
Offline

Joined: March 14th, 2019, 11:19
Posts: 4
Location: Florida
The Seagate Drives I have are model ST33000651SS and i'm trying to use them in a NetApp Drive Enclosure. The drives in the NetApp are exactly the same model with 2 differences.

1) Firmware on my “generic” Seagate drives are 0003. The Firmware that should be on the drive is anything between MS00 – MS05 for NetApp
2) The Block size is on my “generic” Seagate drive is 512 bytes and for NetApp to use it, it should be 520bytes. (i have tried formatting the drive with 520 but i set a sense error. i assume its because of the firmware)

My issue is getting the other “new” firmware on the device. I have a copy of the correct firmware. however, it's in a format called DLP and I need it in the LOD format to flash.

Does anyone know how to download firmware from another drive or convert the NetApp DLP firmware file to an LOD file?


I was able to get this done a few years ago, but I don’t remember what I did and the Websites I used have been taken down since then ☹


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 14th, 2019, 16:45 
Offline
User avatar

Joined: September 8th, 2009, 18:21
Posts: 11350
Location: Australia
Can you upload examples, or provide links to examples, of LOD and DLP files for Seagate's SAS drives?

_________________
A backup a day keeps DR away.


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 14th, 2019, 17:00 
Offline
User avatar

Joined: August 9th, 2007, 8:40
Posts: 796
Location: United Kingdom
what command are you using to format @ 520 bps? If you haven’t already done it, You may need to change blocksize to 520 before format.

_________________
<itch>
скратчи
If you can keep your head when all about you are losing theirs, you probably don't fully understand the situation. ... Mr Kipling


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 14th, 2019, 17:27 
Offline

Joined: March 14th, 2019, 11:19
Posts: 4
Location: Florida
I have tried 2 utilities.

With this command i get a sense error / invalid command.
sg_format --format --size=520

with this utility, it works for about 2 hours and then quits with errors. Then i have media errors on the drive. which are corrected if i reformat.
http://micha.freeshell.org/scsi/


attached is the NetApp Firmware file.


Attachments:
File comment: EXAMPLE SEAGATE FIRMWARE - NOT FOR THIS DRIVE
ConstellationES3-Megalodon-SATA-StdOEM-SN06.zip [969.21 KiB]
Downloaded 41 times
File comment: NetApp Firmware - FOR THIS DRIVE
D_ST33000651SS_4775003_MS05_1600_009.zip [906.12 KiB]
Downloaded 44 times
Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 14th, 2019, 17:31 
Offline
User avatar

Joined: September 29th, 2005, 12:02
Posts: 3278
Location: Chicago
xdvst8x wrote:
Does anyone know how to download firmware from another drive or convert the NetApp DLP firmware file to an LOD file?

I'm not 100% sure but I think cross-platform FW update is blocked by FW on those drives. In other words you't be able to update FW to NetApp even with LOD format.
But I don't know how DLP is different from LOD

_________________
https://www.linkedin.com/in/artemrubtsov/


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 15th, 2019, 4:00 
Offline

Joined: September 26th, 2016, 4:26
Posts: 27
Location: Russia
xdvst8x,
Quote:
convert the NetApp DLP firmware file to an LOD file

I can, but not for free. If interested, write PM.


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 15th, 2019, 5:35 
Offline
User avatar

Joined: September 8th, 2009, 18:21
Posts: 11350
Location: Australia
ISTM that, to convert DLP to LOD, one would only need to strip the first 0x1A0 bytes from the DLP file (NetApp's header ?). Or am I missing something?

_________________
A backup a day keeps DR away.


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 15th, 2019, 5:46 
Offline

Joined: September 26th, 2016, 4:26
Posts: 27
Location: Russia
Hello, Frank. 99 to 1 which is not enough. FW is usually checks what is being loaded into hard. Enterprise segment ... big bucks.


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 15th, 2019, 10:45 
Offline

Joined: March 14th, 2019, 11:19
Posts: 4
Location: Florida
i stripped off the first 0x1A0 bytes of the file. Tried flashing and got these errors;

ubuntu@ubuntu:~/Downloads$ sudo hdparm --fwdownload D_ST33000651SS.LOD --yes-i-know-what-i-am-doing --please-destroy-my-drive /dev/sda
/dev/sda:
SG_IO: bad/missing sense data, sb[]: 72 05 20 00 00 00 00 1c 02 06 00 00 cf 00 00 00 03 02 00 01 80 0e 00 00 00 00 00 00 00 00 00 00
SG_IO: bad/missing sense data, sb[]: 72 05 20 00 00 00 00 1c 02 06 00 00 cf 00 00 00 03 02 00 01 80 0e 00 00 00 00 00 00 00 00 00 00

AND

ubuntu@ubuntu:~/Downloads$ sudo sg_write_buffer -v -m 5 -I D_ST33000651SS.LOD /dev/sg0
tried to read 8388608 bytes from D_ST33000651SS.LOD, got 990640 bytes
will write 990640 bytes
sending single write buffer, mode=0x5, mpsec=0, id=0, offset=0, len=990640
Write buffer cmd: 3b 05 00 00 00 00 0f 1d b0 00
Write buffer:
Descriptor format, current; Sense key: Illegal Request
ASC=26, vendor specific qualification ASCQ=98 (hex)
Descriptor type: Field replaceable unit code: 0x0
Descriptor type: Vendor specific [0x80]
00 00 00 00 00 00 00 00 00 00 00 00 00 00
Write buffer failed: Illegal request sense key, apart from Invalid opcode


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 15th, 2019, 19:21 
Offline
User avatar

Joined: September 29th, 2005, 12:02
Posts: 3278
Location: Chicago
Checksum mismatch error

_________________
https://www.linkedin.com/in/artemrubtsov/


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 18th, 2019, 20:18 
Offline

Joined: March 14th, 2019, 11:19
Posts: 4
Location: Florida
i had removed the first 0x1A0 bytes from the dlp file. guys that isnt correct...


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 19th, 2019, 1:52 
Offline

Joined: March 19th, 2019, 0:40
Posts: 5
Location: Los Angeles
I am in the same boat trying to get some referb 900GB ST9900805SS drives to work in a NetApp E5400 array.
the array only accepts drive firmware that start with MS or NE
I can clear the drive lockout in the array manually on the array serial console, but once one of the controllers reboots it relocks out the drive (it also will not write a DacStore to the drive because it is uncertified) [if interested i can give instructions on how to do this, but it seems like a bad idea to use outside a test lab]

I'm have been unsucessful in moding the ST9900805SS stock 0004 firmware to report MS04 or getting the NetApp MS04/MS07 dlp firmware flashed.
I've pulled off the NetApp header from the dlp files but the drive does not accept the firmware.
I've tried modifiying the DLP file to match the 0004 firmware and try to have the NetApp array download the firmware and it fails.

I did get my drive to Protection Type 2 (NetApp calls this "Data Assurance") using
Code:
SeaChest_Format -d /dev/sgXX --protectionType 2 --formatUnit 512


does anyone have any experience or guidance in modifying the seagate LOD to report a different firmware revision?
is there a way to modify the firmware revision using the drive ttl console?
preferably I'd love a way to flash the official MS07 firmware onto the drive.


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 19th, 2019, 4:38 
Offline

Joined: September 26th, 2016, 4:26
Posts: 27
Location: Russia
Everything is possible... It is possible to make a patch that can be loaded in hard by free utilites. There is no free way to do this patch by free utilities.


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 19th, 2019, 16:08 
Offline

Joined: March 19th, 2019, 0:40
Posts: 5
Location: Los Angeles
what non-free tools are needed to modify a LOD file?
hdparm does not seem to be usable to hard load firmware on these drives because they are SAS and do not talk AHCI/SATA, what tools would you use to hard load the firmware?


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 20th, 2019, 2:15 
Offline

Joined: September 26th, 2016, 4:26
Posts: 27
Location: Russia
cypher497,
Well, let me teach you. Ask the google: seagate+firmware+update+for+sas.
First link.
What non-free utility need to patch loader? You misunderstood me. I don't know commercial utilities either. I wanted to say: do not try to look for freebies in this matter. There is not. 100%. But... With knowledge of how the firmware is arranged, you can get patch by free WinHex.


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 20th, 2019, 5:49 
Offline
User avatar

Joined: September 8th, 2009, 18:21
Posts: 11350
Location: Australia
Some light reading (for SATA, but may be relevant to SAS also) …

Analysis of Seagate F3 Firmware Update:
http://www.hddoracle.com/viewtopic.php?f=59&t=816

Analysis of Seagate F3 ROM:
http://www.hddoracle.com/viewtopic.php?f=59&t=2173

ZOC scripts - Seagate LOD files parsing :
http://www.hddoracle.com/viewtopic.php?f=113&t=815

Seagate CRC calculator:
http://www.hddoracle.com/download/file.php?id=5842

Python Script to Calculate Seagate F3 Checksums :
http://www.hddoracle.com/viewtopic.php?f=109&t=1821

Seagate F3 loader tool :
http://www.hddoracle.com/viewtopic.php?f=22&t=1809

F3romExplorer :
http://www.hddoracle.com/viewtopic.php?f=22&t=2534

_________________
A backup a day keeps DR away.


Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 26th, 2019, 3:52 
Offline
User avatar

Joined: September 8th, 2009, 18:21
Posts: 11350
Location: Australia
xdvst8x wrote:
Sense key: Illegal Request
ASC=26, vendor specific qualification ASCQ=98 (hex)
Write buffer failed: Illegal request sense key, apart from Invalid opcode

Just to elaborate on what has already been stated …

SCSI Commands Reference Manual, Fibre Channel (FC), Serial Attached SCSI (SAS):
https://www.seagate.com/files/staticfiles/support/docs/manual/Interface%20manuals/100293068k.pdf

Code:
ASC (byte 12)  ASCQ (byte 13)  Description                         Sense Key

26             98              Invalid Field Parameter—Check Sum   5


Attachments:
ASC_ASCQ_Sense_Key.GIF
ASC_ASCQ_Sense_Key.GIF [ 63.01 KiB | Viewed 1631 times ]

_________________
A backup a day keeps DR away.
Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 26th, 2019, 19:10 
Offline
User avatar

Joined: September 8th, 2009, 18:21
Posts: 11350
Location: Australia
I have stripped the 0x1A0-byte header from the DLP file to create a LOD file. I have then extracted all the individual components from the LOD file. Each of these LOD components is preceded by a 0x40-byte header. I have then verified that the checksums for each of these headers are valid.

See attachment.

This is the tool I used for the analysis:

http://www.users.on.net/~fzabkar/temp/STLODPA2.bas
http://www.users.on.net/~fzabkar/temp/STLODPA2.exe


Attachments:
Netapp_fw_components.7z [906.14 KiB]
Downloaded 34 times

_________________
A backup a day keeps DR away.
Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 27th, 2019, 16:01 
Offline

Joined: March 19th, 2019, 0:40
Posts: 5
Location: Los Angeles
tool to unpack dlp (win64 cmd line): http://ghosttoast.com/hdd_tools/dlp_drive_unpacker_0.6.0_g4591b30.zip

for the drive I have the only difference between the NetAppOEM and the stdOEM firmware is the sections 0x22[DL_BFWCTNR_0] and 0x26[DL_CFWDISC].
I've been able to flash the DL_BFWCTNR_0.
The CFW will attempt to download if I change header bytes 08-14 from 0x00004E20 [in NetAppOEM] to 0x00004E80 [in stdOEM], but the drives issuses LED cold reset asc/ascq. not sure what bytes 08-14 in the CFW lod header mean yet.

I do have a tool for patching the firmware revision to report a different ID. on a side note seagate started signing all SAS firmware updates starting with 10K v8 drives, even the STD non Self Encrypting Drives.

seagate_fw_info (win64 cmd line): http://ghosttoast.com/hdd_tools/seagate_fw_info_0.6.0_g4591b30.zip
still trying to understand the seagate checksum header calculation, python reduce/lambda functions are still confusing to me.


Attachments:
File comment: NetApp E-Series fw info
SEAGATE_ST9900805SS_MS07.lod.txt [15.83 KiB]
Downloaded 62 times
File comment: stdOEM fw info
CP-SAS-0004.LOD.txt [15.79 KiB]
Downloaded 53 times
Top
 Profile  
 
 Post subject: Re: Generic Seagate HDD to NetApp HDD
PostPosted: March 29th, 2019, 5:13 
Offline
User avatar

Joined: September 8th, 2009, 18:21
Posts: 11350
Location: Australia
The following command line uploads a loader file into the drive's RAM, but how can we be sure that this file will be processed as a firmware update?

    sudo sg_write_buffer -v -m 5 -I D_ST33000651SS.LOD /dev/sg0

@cypher497, do you have links to Seagate's ST9900805SS stock 0004 firmware and NetApp's MS04/MS07 dlp?

Which command lines are used by Seagate's (SeaFlash?) and NetApp's flash utilities? Seagate's SeaFlash utility can specify the model number and family ID of the target drive, thereby overriding any configuration file (CFS). The CFS file normally filters out unsuitable candidates for the update. Perhaps this could be the solution.

As for your report files, they seem to have a few formatting errors.

Code:
B00-B04[           ?] 0x1314100E, 320081934
    ^^^
    B03 <-- shouldn't this be the byte range, ie byte 0 to byte 3 ?

B04-B08[           ?] 0x10030002, 268632066
    ^^^
    B07 <-- shouldn't this be 7, etc ?

B08-B12[           ?] 0x00000000, 0
B12-B14[subtype     ]     0x10FF, 4351
B14-B16[section type]     0x0041, 65
B16-B20[section size] 0x00002000, 8192
B20-B24[sfw ver    ?] 0x00300385, 3146629
B26-B28[fw ver      ]     0xF01B, 61467
B24-B26[fw time     ]     0x0817, 2071
B28-B32[fw date     ] 0x20091708, 537466632, 2009-08-17
B32-B36[           ?] 0x00000000, 0
B36-B40[size+hdr    ] 0x00002040, 8256
B40-B44[           ?] 0x00000000, 0
B44-B48[           ?] 0x00000000, 0
B48-B52[           ?] 0x00000000, 0
B52-B56[           ?] 0x00000000, 0
B56-B60[           ?] 0x00000000, 0
B60-B62[           ?]     0x0000, 0
B60-B62[hdr cksum   ]     0x4861, 18529
^^^^^^^
shouldn't this be B62-B63 ?

[module crc             ] 0xD281, 53889
[module crc bytes       ] 0x81D2
[module crc check       ] GOOD
[module crc regen       ] 0xD281, 53889
[module crc regen bytes ] 0x81D2

I'm not sure I understand what you mean by the "the seagate checksum header calculation". If you are referring to the 0x40-byte headers for each section of the LOD file, then the checksum is chosen so that the sum of the 0x20 words that comprise the header is 0x0000.

_________________
A backup a day keeps DR away.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 26 posts ]  Go to page 1, 2  Next

All times are UTC - 5 hours [ DST ]


Who is online

Users browsing this forum: Bing [Bot], Google [Bot], Google Adsense [Bot] and 9 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group