Why can't my ASRock N68-S3 UCC based machine access the full capacity of 3TB hard drives?

2

I recently bought a 3TB Western Digital Green internal hard disk, but discovered that I could only access about 768GB of the capacity on my current desktop PC. After some investigation, I've traced the issue - bizarrely - to my motherboard. For example, if I connect the drive via a USB-SATA bridge (so I'm not relying on motherboard SATA, but everything else is the same) the problem goes away. The drive works perfectly on another machine on internal SATA. Using a different internal 3TB drive on my machine, however, shows the same problem - though a 2TB drive is fine.

Also, I've updated to the latest BIOS and motherboard drivers and it made no difference. I've also tried formatting both as MBR and GPT, which also made no difference. I need GPT to access the full 3TB capacity, of course, but I tried both anyway.

Initially I bypassed the issue by formatting the drive while using that USB-SATA bridge. Windows reported the full capacity for the partition then [when the drive was connected via motherboard SATA again], but locked up when I tried to write more than 768GB of data to that partition. That suggests Windows 7 is failing to do all the checks it should to ensure a partition really is accessible, of course, but doesn't explain why the limit exists.

The motherboard is an ASRock N68-S3 UCC.

Interestingly, there's a FAQ about what looks like the same issue on the page I linked, but the solution - use Windows 7 SP1 - can't be correct. I already use Windows 7 SP1.

I've sent a support request to ASRock, but I've not received a reply other than to confirm they received the request. Even allowing for the new year, it has been long enough that I figure they don't intend to answer.

Before giving too bad an impression - I've had this board (with an Athlon 2 X4 640) for a few years now and been pretty happy with it. It was bought as a budget board, and it did the job expected of it very well. Recently, I've decided it was time for a new, slightly higher-end board and processor, and this 3TB drive has really just pushed me to place the order a little earlier.

Even so, this "problem" board and processor will live on. It's not a bad board in general, it just has some SATA-related oddness.

Speaking of which, two other SATA-related oddities on this board that may be related...

  1. Windows identifies all my SATA devices as SCSI devices in Device Manager.
  2. When I plug in an eSATA drive, I don't get the option to eject it from Windows - it has to stay plugged in until I switch the machine off (so I tend to use USB instead).

So - why can't my ASRock N68-S3 UCC based machine access the full capacity of 3TB hard drives? Is it something I could fix (e.g. a BIOS setting that I have somehow failed to spot)?

Steve314

Posted 2014-01-07T11:47:09.613

Reputation: 1 569

If the motherboard has an actual BIOS that would be the reason. Only UEFI has the ability to load GPT disk which is required to have a bootable 3TB+ disk. The only way this would be possible is if the term BIOS wasn't being used in the literal sense and the UEFI/BIOS has a legacy mode you can disable. The simplest way to proof you can boot to a GPT partition is take boot to any bootable efi disk of your choice. – Ramhound – 2014-01-07T12:36:05.300

@Ramhound - the hard drive worked with GPT format - both formatted on the machine and formatted via the USB-SATA bridge then moved back. I never used it as a boot drive, but it was accessible (with the 768GB limit). I actually don't know if I have UEFI with BIOS emulation or an actual BIOS, but probably it is actual BIOS - there's no sign of anything else and the updates claimed to be "BIOS" updates rather than "UEFI" or "firmware". Anyway, that sounds likely so I'll do some checking, but maybe you should make it an answer so I can accept it. – Steve314 – 2014-01-07T13:08:45.257

You have no researched the problem enough and provided enough facts for me to actually provide an answer. – Ramhound – 2014-01-07T13:11:13.837

@Ramhound - next problem for me to figure out - I still dual boot WinXP for some things and want to do that on the new machine. Obviously I can't use a 3TB drive for that, but I have a caddy/drawer so the drive can be removed or switched off easily. BUT... does WinXP work with UEFI? - My new board is definitely UEFI. – Steve314 – 2014-01-07T13:11:16.453

You will be unable to boot to Windows Xp if your using a GPT disk. I suggest using a virtual machine if you actually want to be able to use the entire 3TB disk. – Ramhound – 2014-01-07T13:50:03.457

@Ramhound - I know, that's why I said "obviously I can't...", but as I said I have a caddy/drawer. It takes me about 2 seconds to insert/remove a SATA drive, and I don't have to remove the drive to disconnect it anyway - I just turn the key. My primary hard drive will still be the 500GB non-caddy drive, so that's where WinXP and Win7 will live the same as they do now. 90% of the time I don't need a second internal drive, which is why I bought the caddy and why my 1TB drive second drive that I've had for ages is normally turned off. – Steve314 – 2014-01-07T15:58:46.763

Answers

0

To get this old question closed...

The answer simply was to buy a new motherboard. I've now had an ASUS M5A97 EVO R2.0 for about 2 years and this has none of the problems described - it allows me to format hard drives larger than 2TB to their full capacity (providing I use GPT of course) and if I choose to use MBR anyway, I can use as much of the drive as MBR can cope with (the 2TB maximum). With the correct options set, it also allows me to "eject" hard drives - both eSATA and internal SATA. For internal SATA, this is useful for hard disk drawers. Operating systems correctly report SATA drives as being SATA drives on this board, not misreporting them as SCSI drives.

I'm fairly certain that the old motherboard simply had issues, though ASROCK support did eventually reply essentially claiming that no problem existed ("I successfully tested this in the past with a 3TB drive on N68-GS3 UCC with Win7 x64 SP1. The only difference with your motherboard is in the Ethernet controller.") and telling me to try things I had already tried (latest chipset drivers etc).

Maybe the ASROCK testing was a bit crap? If they tried to use an already-GPT formatted drive, my experience suggests they may not have noticed a problem at first - the problem would happen when they tried to read/write past (for a 3TB drive) about the first 768GB. Even if they formatted the drive on the machine, it wouldn't have taken much distraction to fail to notice that the full capacity wasn't used.

The problem motherboard is still in use in my sisters (and kids) PC, but they are unlikely to ever want or need a hard drive larger than 2TB (or even use more than a fraction of the capacity of their current 1TB drive). They're much more likely to want a smaller SSD at some point.

So ultimately, I never really got an explanation or a solution beyond "problem motherboard", but I no longer need one.

Steve314

Posted 2014-01-07T11:47:09.613

Reputation: 1 569

-1

The problem does not lie with your motherboards SATA side but with MBR and 512 bytes sectors. The master boot record used with older PCs has a limit which we reached with 2TiB drives with 512 bytes chunks (sectors).

In order to use sunch a disk we either:

  • Need to use something else. E.g. te much more modern and well documented format called GPT.
  • Or use bigger chunks (MBR with 4K sectors works up to 16TiB, so you could postpone the problem for a few years).

Using GPT is the general accepted answer since it also has other benefits over MBR (e.g. good documentation, mor than 4 partitions, allowing EFI boot etc etc).

There are two catches though:

  1. The firmware on your motherboard must understand it. (Commonly called BIOS). Not every BIOS does though, and quite a few have buggy implementations. All recent firmware (e.g. with EFI in them) should work just fine though.
  2. The OS must understand the disk format.

1) Is not a problem on a modern system. If you have an ancient board then it will either not boot from it, or worse, hang since it does not understand it and simple does not fail and pass to the next drive.

2) Is not a problem either unless you use an truly ancient OS like XP. But any modern windows (and Linux and BSD and OSX and ...) groks GPT.

Speaking of which, two other SATA-related oddities on this board that may be related...

Windows identifies all my SATA devices as SCSI devices in Device Manager.

This is normal. SATA is actually quite close to SCSI/SASI.

When I plug in an eSATA drive, I don't get the option to eject it

Hmm, I do get that option when using windows 7 SP1 with AHCI enabled. I should not ghet it if I use legacy mode though.

Hennes

Posted 2014-01-07T11:47:09.613

Reputation: 60 739

The trouble with an answer to a two-year-old question is that I know you're wrong, but I can't remember all the details of why - and since I bought a new motherboard (already ordered at the time I posted this) and the old motherboard now powers a relatives PC who has no need for 3TB drives, I now don't have the ability to re-check everything. Long story short, though, I always knew about the 2TB limit - the fact that using GPT made no difference is the second paragraph of the question. If any part of your answer has any relevance it's the "quite a few have buggy implementations". – Steve314 – 2016-03-22T10:25:32.050

When a new motherboard fixes an issue though all else failed, I think I'm justified in calling that a motherboard issue. And BTW - the point of mentioning motherboard SATA wasn't to blame the port - it was as opposed to using the SATA-USB bridge - and in any case, the SATA controller is part of the motherboard. If part of the motherboard isn't doing it's job quite right, who cares which part? For most practical purposes, the motherboard (including all of its components) is one thing. – Steve314 – 2016-03-22T10:27:53.537

On "This is normal." - so how come my current motherboard identifies SATA drives as SATA. And BTW - just because the cable is serial doesn't make them that closely related. The "ATA" part of "SATA" refers, in part, to the command set - much more significant than just using a serial interface, and of course inherited from the old IDE that we now call PATA. And again, with the new motherboard, I get the option to eject eSATA (and internal SATA with the right options set - useful for hard drive caddies/drawers). – Steve314 – 2016-03-22T10:36:22.993