Jump to content
kin0kin

GUIDE: Removing HPA Partition with HDAT2

10 posts in this topic Last Reply

Recommended Posts

Jun 23 06:33:53 Tower kernel: ata3.00: ATA-8: WDC WD10EAVS-14D7B1, 01.01A01, max UDMA/133

Jun 23 06:33:53 Tower kernel: ata3.00: 1953525168 sectors, multi 16: LBA48 NCQ (depth 31/32)

Jun 23 06:33:53 Tower kernel: ata1.00: HPA detected: current 1250261615, native 1250263728

Jun 23 06:33:53 Tower kernel: ata1.00: ATA-8: WDC WD6400AAKS-75A7B0, 01.03B01, max UDMA/133

Jun 23 06:33:53 Tower kernel: ata1.00: 1250261615 sectors, multi 16: LBA48 NCQ (depth 31/32)

Jun 23 06:33:53 Tower kernel: ata3.00: configured for UDMA/133

Jun 23 06:33:53 Tower kernel: ata1.00: configured for UDMA/133

 

parity   WDC_WD10EAVS-14D_WD-WCAU49737055   23°C   976,762,552   -   5,326,979   2,793,931   0

disk1 WDC_WD6400AAKS-7_WD-WCASY1185307 * 625,130,776 313,362,812 5,201,283 23 0

disk2 WDC_WD6400AAKS-7_WD-WCASY1489916 * 625,130,776 70,794,680 5,204,428 6 0

disk3 WDC_WD10EAVS-00D_WD-WCAU49248571 * 976,762,552 7,925,108 7,970,260 168 0

 

HPA seems to be detected on Parity drive. However, drive space is reported correctly as compared to another EAVS drive. Should I be concerned about this? Should I move Parity drive to a different SATA Port and do another sync?

 

Also seems to be detected on one of my 6400AAKS:

Jun 23 06:33:53 Tower kernel: ata2.00: HPA detected: current 1250261615, native 1250263728

Jun 23 06:33:53 Tower kernel: ata2.00: ATA-8: WDC WD6400AAKS-75A7B0, 01.03B01, max UDMA/133

If I clear off the HPA and the drive shows up as unformatted, subsequently I use unRaid to rebuild the drive, would the HPA be rebuilt into the drive?

Share this post


Link to post

Jun 23 06:33:53 Tower kernel: ata3.00: ATA-8: WDC WD10EAVS-14D7B1, 01.01A01, max UDMA/133

Jun 23 06:33:53 Tower kernel: ata3.00: 1953525168 sectors, multi 16: LBA48 NCQ (depth 31/32)

Jun 23 06:33:53 Tower kernel: ata1.00: HPA detected: current 1250261615, native 1250263728

Jun 23 06:33:53 Tower kernel: ata1.00: ATA-8: WDC WD6400AAKS-75A7B0, 01.03B01, max UDMA/133

Jun 23 06:33:53 Tower kernel: ata1.00: 1250261615 sectors, multi 16: LBA48 NCQ (depth 31/32)

Jun 23 06:33:53 Tower kernel: ata3.00: configured for UDMA/133

Jun 23 06:33:53 Tower kernel: ata1.00: configured for UDMA/133

 

parity   WDC_WD10EAVS-14D_WD-WCAU49737055   23°C   976,762,552   -   5,326,979   2,793,931   0

disk1 WDC_WD6400AAKS-7_WD-WCASY1185307 * 625,130,776 313,362,812 5,201,283 23 0

disk2 WDC_WD6400AAKS-7_WD-WCASY1489916 * 625,130,776 70,794,680 5,204,428 6 0

disk3 WDC_WD10EAVS-00D_WD-WCAU49248571 * 976,762,552 7,925,108 7,970,260 168 0

 

HPA seems to be detected on Parity drive. However, drive space is reported correctly as compared to another EAVS drive. Should I be concerned about this? Should I move Parity drive to a different SATA Port and do another sync?

 

Also seems to be detected on one of my 6400AAKS:

Jun 23 06:33:53 Tower kernel: ata2.00: HPA detected: current 1250261615, native 1250263728

Jun 23 06:33:53 Tower kernel: ata2.00: ATA-8: WDC WD6400AAKS-75A7B0, 01.03B01, max UDMA/133

You should be concerned.

 

Post a full syslog, not just excerpts if you wish guidance on how to remove the HPA on your drives. 

You basically need to perform three tasks, all of which will make unRAID think you've changed the disk, so you'll only be able to do these operations ONE DISK AT A TIME if you want unRAID to re-construct the disks for you.

 

1.  remove the HPA

2.  set the partition to use the full size now available.

3.  re-size the file-system in the partition to use the full partition.

 

Are we correct in that those drives were once connected to a Gigabyte motherboard?

 

Least technical would be to

stop the array

1. un-assign the drive to be re-sized

2. power down, power back up.  (The HPA cannot be set on a disk more than once per power cycle, so it one was just set, you'll need to power cycle to be able to change it) 

3. use whatever tool you need to remove the HPA.  Many have been able to use "hdparm -N" successfully, so that is easier than installing the disk in another PC to use a different utility for most.

4. re-assign the disk to its original slot. 

Press "Start" to begin the re-construction. 

If a data disk, unRAID should think it is a new disk and offer to re-construct the contents of the old onto the new based on parity and the other data disks. 

(If it is the parity disk, then it will just re-construct parity as if it was the initial calculation) 

Let it finish the re-construction before you do anything with the next disk. 

 

DO NOT press the button labeled as "restore" as it is actually an "Initialize Configuration" button and immediately invalidates parity. 

You will need to perform the operation on the parity drive first, otherwise it would be smaller than your data drives.

 

Joe L.

Share this post


Link to post

It's not a Gigabyte board, it's an Asus board as per the title.

 

Syslog shows HPA on ata1 (10eavs/parity) and ata2 (6400aaks/data). I imagine I would need to use hdparm -N on the 6400AAKS data drive first, let unraid rebuild the drive. However, my second concern is whether unraid will rebuild the HPA.

 

If I let unraid rebuild the 6400aaks after clearing it, I could just clear off parity afterwards with hdparm -N as well. I'm just wondering if the mobo will attempt to save a recovery bios into the parity drive again. I believe the 6400AAKS was previously used on my HTPC with a gigabyte board, hence an HPA was found. Not sure if the EAVS was ever connected to the gigabyte board.

syslog-2010-06-25.txt

Share this post


Link to post

It's not a Gigabyte board, it's an Asus board as per the title.

 

Syslog shows HPA on ata1 (10eavs/parity) and ata2 (6400aaks/data). I imagine I would need to use hdparm -N on the 6400AAKS data drive first, let unraid rebuild the drive. However, my second concern is whether unraid will rebuild the HPA.

Once you remove the HPA from the drive it will report its true size to the operating system.  unRAID will not put back the HPA, but it will go through the exact same process as if you upgraded any disk to a larger size replacement.

If I let unraid rebuild the 6400aaks after clearing it, I could just clear off parity afterwards with hdparm -N as well. I'm just wondering if the mobo will attempt to save a recovery bios into the parity drive again. I believe the 6400AAKS was previously used on my HTPC with a gigabyte board, hence an HPA was found. Not sure if the EAVS was ever connected to the gigabyte board.

I've never heard of an ASUS board adding an HPA.  Odds are you connected the drive to the other PC at one point.

 

You MUST remove the HPA from the parity drive first, and not the data drive, otherwise the data drive would be bigger than parity and the array will not start.  Once the HPA is removed from the parity drive unRAID will detect it as a new drive and will perform a complete new parity calculation to store on it.

 

Only after the parity drive is correctly sized can you perform the same set of steps on the data drive to remove the HPA and then re-construct its contents back onto itself.

 

Joe L.

Share this post


Link to post

The Drive Sizes reported that you bolded already tell you if HPA is on the drive or not.

Share this post


Link to post

Thanks, Joe.

 

I found your detail post here about fixing it.

 

http://lime-technology.com/forum/index.php?topic=5072.msg46903#msg46903

 

I haven't read through everything yet. How would I go about verifying if HPA has been taken care of? Do I just do a parity check and see if the same error shows up in the syslog?

The HPA is not detected by a parity check. It has nothing to do with a parity check.  HPA are detected when you reboot. 

 

So.... reboot. then examine the syslog.

Share this post


Link to post

hdparm -N didn't work for me, gave me an invalid note of some sort. I'd resorted to using HDAT2 to remove HPA, which is actually really easy. I decided to write a guide for those who may need to use HDAT2 to remove HPA in the future.

 

DUMMIES' GUIDE TO REMOVING HPA WITH HDAT2 TOOL

 

1) Backup all the data to somewhere else unless you plan to have unRaid rebuild the data after removing HPA.

2) Download HDAT2 CD Boot image: http://www.hdat2.com/ Filename: HDAT2ISO_48.RAR

3) Burn the disc and boot it up.

4) Upon booting the disc, select option 1

img0444y.jpg

5) Type HDAT2 and hit enter

img0445l.jpg

6) All your drives will be shown in HDAT2 console. Drive with HPA partition will be labeled "HPA_IS_ACTIVE".

img0446nk.jpg

img0447t.jpg

7) Hit ENTER on the drive you wish to remove HPA

8) Select "SET MAX (HPA) Menu"

img0449e.jpg

9) Select "Set Max Address"

img0450l.jpg

10) Next screen will show how much space the HPA partition has taken (Current Hidden). New hidden is automatically set to 0. Simply hit "S" and HPA partition will be wiped out.

img0451zh.jpg

img0452hd.jpg

11) Hit any key and it should bring you back to the main menu. If not, hit escape until you see the main menu. Verify that HPA partition is indeed removed. Reboot and pop the disk back to unRaid.

img0453qa.jpg

Share this post


Link to post

I've added a link to the very nice hdat2 guide above, in the UnRAID Topical Index, HPA section.

 

Because of this and other links to here, I'll add a comment about the original poster's situation, to avoid confusion.  The OP did not have an HPA on their parity drive (WD10EAVS-14D7B1 on ata3), but did have 2 HPA's on each of the WD640's (on ata1 and ata2).  Since the parity drive was fine, prior to unRAID v4.7, the best advice here would be to do nothing, leave the HPA's alone.  If instead the HPA had been on the parity drive, then it would certainly have to be removed.  Unfortunately with unRAID v4.7, HPA's on data drives may have to be removed, depending on whether unRAID v4.7 thinks they are the wrong size or not.

 

Just a reminder, every machine is different, even if it uses the same motherboard and drives, so the fact that one syslog shows (for example) ata6 and sdj for a particular drive does not mean that another machine will assign the same channel and ID, perhaps not even on the same machine after rebooting!  Before running any command of importance, ALWAYS re-verify the drive ID, so you don't apply a command on the wrong drive.

Share this post


Link to post
Guest registereduser

this doesn't work for me.

it locks up at

 

"PCI ATA Devices:" and sits there forever, it never goes further.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now