Pending fix No drives found

  • SpinRite v6.1 Release #3
    Guest:
    The 3rd release of SpinRite v6.1 is published and may be obtained by all SpinRite v6.0 owners at the SpinRite v6.1 Pre-Release page. (SpinRite will shortly be officially updated to v6.1 so this page will be renamed.) The primary new feature, and the reason for this release, was the discovery of memory problems in some systems that were affecting SpinRite's operation. So SpinRite now incorporates a built-in test of the system's memory. For the full story, please see this page in the "Pre-Release Announcements & Feedback" forum.
    /Steve.
  • Be sure to checkout “Tips & Tricks”
    Dear Guest Visitor → Once you register and log-in please checkout the “Tips & Tricks” page for some very handy tips!

    /Steve.
  • BootAble – FreeDOS boot testing freeware

    To obtain direct, low-level access to a system's mass storage drives, SpinRite runs under a GRC-customized version of FreeDOS which has been modified to add compatibility with all file systems. In order to run SpinRite it must first be possible to boot FreeDOS.

    GRC's “BootAble” freeware allows anyone to easily create BIOS-bootable media in order to workout and confirm the details of getting a machine to boot FreeDOS through a BIOS. Once the means of doing that has been determined, the media created by SpinRite can be booted and run in the same way.

    The participants here, who have taken the time to share their knowledge and experience, their successes and some frustrations with booting their computers into FreeDOS, have created a valuable knowledgebase which will benefit everyone who follows.

    You may click on the image to the right to obtain your own copy of BootAble. Then use the knowledge and experience documented here to boot your computer(s) into FreeDOS. And please do not hesitate to ask questions – nowhere else can better answers be found.

    (You may permanently close this reminder with the 'X' in the upper right.)

LeMic

Member
Dec 30, 2020
6
1
Denmark
Hi all,

I have a HTPC running on an Asrock J4205-ITX motherboard with an SSD and a harddrive. When I run the test, ReadSpeed displays the top description-text with the spinning slashes and that pretty much it, no drive-details ever appear. Has anybody else had this issue?

Best regards,

Michael
 
Thanks for the tip. I ran rs.exe /? and looked at the options. With /ident and /verbose, the following text is added after the top description

AHCI '.' and IDE '-' drive reset & diagnostic latencies in milliseconds:

But apart from that, the result is the same, ReadSpeed spinning its slashes :)

/m
 
Last edited:
Hmmm. This is the first report of ReadSpeed not finding drives and apparently stalling. The ReadSpeed DOS files include a utility "PCI.EXE". It will show us what your system looks like from the PCI viewpoint. Could you share its output? Thanks!

(If you give the command "pci >pci.txt" PCI's output will be sent to a file named "pci.txt" for easier sharing.)
 
Hmmm. This is the first report of ReadSpeed not finding drives and apparently stalling. The ReadSpeed DOS files include a utility "PCI.EXE". It will show us what your system looks like from the PCI viewpoint. Could you share its output? Thanks!

(If you give the command "pci >pci.txt" PCI's output will be sent to a file named "pci.txt" for easier sharing.)

Here you go :) (Edit: Added the file as the textalignment seems a bit off )

Code:
+----------------------------------------------------------+
| PCI v1    Simple DOS-based PCI System Enumerator     GRC |
+----------------------------------------------------------+

+ Contemporary PCI subsystem detected.

Bus# Device Fnc Clas PgIf  Type  Vendor Device SubVen SubSys
---- ------ --- ---- ---- ------ ------ ------ ------ ------
  0    31    0  0601  00          8086   5AE8   1849   5AE8
  0    31    1  0C05  00          8086   5AD4   1849   5AD4
  0    21    0  0C03  30          8086   5AA8   1849   5AA8
  0    19    0  0604  00          8086   5AD8    --     -- 
  0    19    1  0604  00          8086   5AD9    --     -- 
  0    19    2  0604  00          8086   5ADA    --     -- 
  0    19    3  0604  00          8086   5ADB    --     -- 
  0    18    0  0106  01   AHCI   8086   5AE3   1849   5AE3
  0    15    0  0780  00          8086   5A9A   1849   5A9A
  0    14    0  0403  00          8086   5A98   1849   C892
  0     2    0  0300  00          8086   5A84   1849   5A84
  0     0    0  0600  00          8086   5AF0   1849   5AF0
  3     0    0  0106  01   AHCI   1B21   0612   1849   0612
  2     0    0  0280  00          8086   2526   8086   0014
  1     0    0  0200  00          10EC   8168   1849   8168
 
Thanks @LeMic. I wrapped your PCI.EXE output in "code" tags which give it a fixed-width font so that things line up nicely. (y)

We see from your PCI output, that you have two AHCI controllers, an Intel controller on the motherboard and a second controller that's using an ASM1062 Serial ATA Controller. ReadSpeed has worked on both of those without any trouble, so whatever is going on is a mystery at this point.

I would love to work with you to track this down, but it's much less practical to do this here in the forums than in GRC's SpinRite development newsgroup, where all of the real work gets done. Can you arrange to participate in our newsgroups? You can use my favorite newsreader "Gravity" or Mozilla Thunderbird or any of many other NNTP newsreaders. Details and more options are all on GRC's “Discussions” page. Thanks!!
 
  • Like
Reactions: Barry Wallis
Thanks @LeMic. I wrapped your PCI.EXE output in "code" tags which give it a fixed-width font so that things line up nicely. (y)

We see from your PCI output, that you have two AHCI controllers, an Intel controller on the motherboard and a second controller that's using an ASM1062 Serial ATA Controller. ReadSpeed has worked on both of those without any trouble, so whatever is going on is a mystery at this point.

I would love to work with you to track this down, but it's much less practical to do this here in the forums than in GRC's SpinRite development newsgroup, where all of the real work gets done. Can you arrange to participate in our newsgroups? You can use my favorite newsreader "Gravity" or Mozilla Thunderbird or any of many other NNTP newsreaders. Details and more options are all on GRC's “Discussions” page. Thanks!!

Hi Steve,

I installed a client and made a message about this issue in the dev group (y)
 
Michael,

It is my honor to write to you, the discoverer of the first bug in ReadSpeed.

I am Richard, the discoverer of the zeroth bug in ReadSpeed. Please let me help you get ReadSpeed running. I also hope to reasonably demonstrate we found the same bug.

1. Please go to https://www.grc.com/dev/SpinRite/ and download DrivEnum.exe to your ReadSpeed USB drive. Boot from the USB drive, run DrivEnum.exe, then rs.exe. Does rs.exe run OK now? I expect it will.

For me rs.exe crashes with an INVALID OPCODE on the second run. And running DrivEnum.exe before the second run makes it run normally.

2. Please go to https://www.grc.com/sr/faq.htm and follow the "How do I make a bootable USB thumb drive??" instructions to make an MS-DOS, not freedos, bootable USB drive. Put rs.exe on the USB drive, boot from it, and run rs.exe. Does rs.exe run OK now? I expect it will. It does for me.


Steve,

Running RS-49k.exe a first time under freedos on my PC (on which AHCI*.exe run a second time under freedos crashes with an INVALID OPCODE) produces the following:


Code:
  +--------------------------------------------------------------------------+
  |  RS - Release 49k: Exploring revectoring the interrupt controller.       |
  +--------------------------------------------------------------------------+

Checking AHCI controller at:  0:17:0 , class: 0106, progif: 01, pi: 0000003F
    Port  0 audit: 1 2 3 4 5 6 7 8 9 OK 1    Port  1 audit: 1 2 3 4 5 6 7 8 9 10 11 12 13

BIOS Size  Drive Identity     Location:    0      25%     50%     75%     100
---- ----- ---------------------------- ------- ------- ------- ------- -------
 81  640GB WDC WD6400AAKS-65A7B0         112.7   107.5    99.2    84.3    58.5

                  Benchmarked: Thursday, 2021-01-14 at 16:27


Running it a second time the spinners pause then resume, the text up to "OK 1" appears, and nothing more happens.

I expect lawson23 has hit the same bug. https://forums.grc.com/threads/invalid-opcode.459/
 
Michael,

It is my honor to write to you, the discoverer of the first bug in ReadSpeed.

I am Richard, the discoverer of the zeroth bug in ReadSpeed. Please let me help you get ReadSpeed running. I also hope to reasonably demonstrate we found the same bug.

1. Please go to https://www.grc.com/dev/SpinRite/ and download DrivEnum.exe to your ReadSpeed USB drive. Boot from the USB drive, run DrivEnum.exe, then rs.exe. Does rs.exe run OK now? I expect it will.

For me rs.exe crashes with an INVALID OPCODE on the second run. And running DrivEnum.exe before the second run makes it run normally.

2. Please go to https://www.grc.com/sr/faq.htm and follow the "How do I make a bootable USB thumb drive??" instructions to make an MS-DOS, not freedos, bootable USB drive. Put rs.exe on the USB drive, boot from it, and run rs.exe. Does rs.exe run OK now? I expect it will. It does for me.


Steve,

Running RS-49k.exe a first time under freedos on my PC (on which AHCI*.exe run a second time under freedos crashes with an INVALID OPCODE) produces the following:


Code:
  +--------------------------------------------------------------------------+
  |  RS - Release 49k: Exploring revectoring the interrupt controller.       |
  +--------------------------------------------------------------------------+

Checking AHCI controller at:  0:17:0 , class: 0106, progif: 01, pi: 0000003F
    Port  0 audit: 1 2 3 4 5 6 7 8 9 OK 1    Port  1 audit: 1 2 3 4 5 6 7 8 9 10 11 12 13

BIOS Size  Drive Identity     Location:    0      25%     50%     75%     100
---- ----- ---------------------------- ------- ------- ------- ------- -------
81  640GB WDC WD6400AAKS-65A7B0         112.7   107.5    99.2    84.3    58.5

                  Benchmarked: Thursday, 2021-01-14 at 16:27


Running it a second time the spinners pause then resume, the text up to "OK 1" appears, and nothing more happens.

I expect lawson23 has hit the same bug. https://forums.grc.com/threads/invalid-opcode.459/

Hi Richard,

Thanks for your suggestions, much appreciated. However I think this might be something related to the hardware I'm using, more specifically the Intel controller on the motherboard. I had quite a bit of mail-exchange with Steve where he tried to pinpoint the problem, but to no avail unfortunately. But Steve has found a motherboard like mine and its in-route to his lab :)

Just to be sure I did try and follow your suggestions. I ran Drivenum and it hanged for a long time and exited saying that it was unable to find ATA-compatible hard drives. I then ran RS and it "hanged" with the spinning slashes. Steves guess is that the hardware interrupts are acting differently than expected. Hopefully his board will "misbehave" just like mine :)

Again, thanks for the suggestion and have a great weekend,

Michael
 
  • Like
Reactions: Steve
Updating following Michael's (@LeMic's) posting above...

The Mini-ITX motherboard in question has arrived from Germany. I have a Mini-ITX case and DRAM for it, but I haven't yet made time to set it up and dig in. Since this is still a "one off," I plan to wait until there's a point where my work as paused while I'm awaiting feedback from a SpinRite pre-release. At that point I plan to dig into what's going on with that system.

So, it's on the back burner, where I think it should be, until it's time to bring it forward.
 
  • Like
Reactions: Barry Wallis
My apologies for arriving late for the party, and perhaps I'm crashing the wrong party, but when I run RS I get the message: "ReadSpeed didn't find any ATA or SATA hard drives with IDE or AHCI controllers". I've attached the output from PCI.EXE.
 

Attachments

  • PCI.TXT
    2 KB · Views: 443
Sorry -- I thought that from the discussion earlier in this thread that the PCI.TXT file supplied the necessary information. As I also implied, I'm a raw beginner with ReadSpeed (albeit a longtime Spinrite user), so could you help me here, please? What information do you need? Obviously I was expecting RS to find the hard drives on the machine and produce the display that Steve describes on his page about RS; I've attached the drives output from System Information to give you an idea of what's attached to the system.
 

Attachments

  • Drive information.txt
    3.3 KB · Views: 502
I was expecting RS to find the hard drives
If possible, please describe the drives, their connection/type and model. Are they connected to the motherboard, if so on which type of connection. For example, if they're all NVMe SSDs or USB connected, they will not be found by ReadSpeed as those are not supported yet.
 
I see that one of those drives is called "My Passport", I suspect that is an external USB drive. I don't know about the others. AS Paul says, if your drives are all USB or NVMe, they won't be seen by this utility.
 
OK, getting there -- thanks for your guidance and sorry I'm being so slow. I've attached what I hope is more useful information; is it? There are 4 internal drives; yes, there are also some USB ones but I've removed them from the listing. Disk #0 is an SSD; the rest are HDDs. The machine is an elderly Dell Precision T7600, with legacy boot.
 

Attachments

  • Drive information 2.txt
    5.1 KB · Views: 434
I see what you mean. I have flagged this for Steve's attention.

One question, are these drives showing up in the BIOS, or are they "owned" by the RAID controller?
 
I couldn't see any drive listing in the Settings app for the BIOS; perhaps I'm looking in the wrong place. But during boot-up the system reports 4 non-RAID Disks found on the host adapter and handled by BIOS, so I guess the answer is that they do indeed show up in the BIOS if I knew how to find them there.
 
@Jungle Jim : The PCI.TXT listing you supplied held the clue.

It shows a RAID device with a Vendor & Device of "1000" and "0073". The "RAID"ness itself is not a problem. We routinely run on controllers that declare themselves to be of Class "0104", which is where the RAID designation comes from. A great many of our testers have such systems. But the Vendor & Device was unfamiliar to me from all of our testing. So I used the Device Hunt site to quickly look up what controller "1000" and "0073" represent: Device Hunt with 1000/0073 and it reveals that your system has a "MegaRAID" controller.

Unlike standard AHCI controllers that call themselves RAID controllers (and which we can mostly ignore), your system has an actual physical RAID controller. That effectively places the drives behind it out of ReadSpeed =AND= SpinRite's reach — forever. Drives that are connected behind a RAID controller are deliberately hidden so that only it is able to work with them.

This solves the mystery, but it doesn't solve your interest in getting SpinRite to someday work with those devices. The PCI.TXT listing shows that your system also has a totally generic, standard, Intel-based AHCI controller ("8086" & "1D02") which ReadSpeed and SpinRite will always be able to work with perfectly. So... you could make note of where your SATA cables are connected, then move them to the motherboard's SATA ports to run ReadSpeed and SpinRite (now and in the future)... then return them to where they were.

I wish there was a less messy solution for this, but the MegaRAID controller was deliberately designed to keep anything outside from messing with its drives. :-/
 
Aha. Thanks, Steve. This machine has always had a rather unhappy relationship with Spinrite, and I now understand why. One day soon when I work up the courage I'll have a look at the connections and see if I can make the changes you suggest. Unless, of course, the machine dies of old age first, which from one or two indications I've had recently wouldn't totally surprise me.
 
  • Like
Reactions: Steve