Cluster Validation Storage Test ‘List All Disks’ Fails with Status 87

Greetings CORE blog fans!  It has been awhile so I thought it was time for another blog.  In recent weeks, we have seen an issue where the Windows Server 2008 R2 storage validation test List All Disks is failing with a Status 87.  Figure 1, is an example of what is displayed in the cluster validation report.

clip_image002

Figure 1:  List All Disks failure in Cluster Validation Report.

This error is also reflected in the ValidateStorage log (Figure 2) located in %systemroot%\Cluster\Reports directory.

000016f4.00001714::01:02:06.180  CreateNtFile: Path \Device\HarddiskVolume2, status 87
000016f4.00001714::01:02:06.180  GetNtldrDiskNumbers: Failed to open device \Device\HarddiskVolume2, status 87
000016f4.00001714::01:02:06.180  GetNtldrDiskNumbers: Exit GetNtldrDiskNumbers: status 87
000016f4.00001714::01:02:06.180  CprepPrepareNodePhase2: Failed to obtain boot disk list, status 87
000016f4.00001714::01:02:06.180  CprepPrepareNodePhase2: Exit CprepPrepareNodePhase2: hr 0x80070057, pulNumDisks 0

Figure 2: ValidateStorage log entry

The decode for these errors is shown in figure 3.

# for decimal 87 / hex 0x57 :
  ERROR_INVALID_PARAMETER                                   winerror.h
# The parameter is incorrect.

Figure 3:  Error decode

The cause for this failure to this point is unknown.  What we do know is the path that is called out as seen in Figure 3: above always points to the 100 megabyte partition that is created at the root of the system drive.  This partition is created by default and is in place to support BitLocker.  The approved workaround is to assign a drive letter to the 100 megabyte partition and re-run the validation process.  The List All Disks storage test should pass at that point.  There is no adverse impact to assigning the drive letter to this partition.  As a reminder, BitLocker is not supported in a cluster environment.  This is documented in KB 947302. If an attempt is made to enable BitLocker in a cluster node, the error in Figure 4 is displayed.

clip_image006

Figure 4:  Error when trying to enable BitLocker on a cluster node

I have an ‘ask’ of our readership.  If anyone reading this blog can ‘on demand’ repro this issue, we want to hear from you.  This goes beyond just telling us, “Yeah, I’ve had that issue myself.”  I am interested in hearing from anyone who has perhaps manipulated a setting in their controller card that can either cause validation to fail in this way or make it pass.  I am interested in hearing from someone who had this failure, changed a setting of some kind, either in software or hardware, and the error went away.  Be sure to provide the details (Make and model of controller, Firmware and driver versioning information, steps to reproduce the issue, etc…)

As always, we hope this has been informative for you.

Chuck Timon
Senior Support Escalation Engineer
Microsoft Enterprise Platforms Support