Wikis > AHCI

AHCI Disk Driver

OS2AHCI is an Advanced Host Controller Interface (AHCI) driver for OS/2. It supports both ATA and ATAPI devices in a single driver, thus there’s no need for an ATAPI/CDROM filter driver.

Please read the ReadMe before installing and using this software.

The official binary releases distributed by Arca Noae are thoroughly tested on many different systems and various size disks. Support for disks larger than 2TB was added in version 2.08.

Support and Submitting Tickets

Reporting bugs and requesting new features is done through the ticket system. You can view existing tickets, add comments to them and create new tickets using the corresponding buttons at the top of every page. If you want to submit a new bug or request a feature, please use the Search function first to make sure there is no ticket for the same problem already created.

If you open a ticket, additional information will almost always be necessary. You can save a lot of time by always attaching the log file created by the TestLog program to your ticket when you open it, rather than waiting for the developer to ask for it. Running “testlog generic” automatically captures information about the AHCI driver. See the Producing diagnostic log files wiki.

Be aware that only official binaries are supported.

Known Issues and Limitations

  • A maximum of 8 adapters is supported.
  • Hot swapping is not supported.
  • Port expanders are not supported.
  • On some dual mode disk controllers that are capable of running the DaniS506 driver, that driver may perform better than OS2AHCI.

Warning about disk geometries and OS2AHCI versions prior to 1.31

OS2AHCI versions prior to 1.27 ignored LVM geometry information on the disk and in many cases reported the wrong disk geometry to the OS. This has the possibility of causing LVM sectors to be written in the data area of the disk causing data corruption. Also since wrong disk geometries may have been reported to the OS, the disk may be partitioned incorrectly or incorrect LVM information may have been written to the disk. If you used a version lower than 1.27 to do LVM operations on the disk, you should check your disk for these errors. These disks may not be compatible with fixed versions of OS2AHCI (1.31 and higher).

OS2AHCI versions prior to 1.31 did not calculate disk geometries correctly for some hardware. Although not as serious as the problems in versions prior to 1.27, these versions can also cause incorrect LVM information to be written to the disk. This may make some disks incompatible with fixed versions of OS2AHCI (1.31 and higher).

Disk geometry errors are extremely difficult to solve. It is easy to assume that the fixed drivers are broken just because they work differently than the older versions. In fact it is the older versions that are known to be defective and the new versions (1.31 and higher) are working correctly.

In some cases the only way to “fix” the disk is to backup your data using the old driver, install the current fixed driver, wipe the disk, repartition the disk, and then restore your data. In other cases is it enough to remove erroneous LVM data and recreate correct LVM data. However, unless you can know for sure that you have found all of the erroneous LVM sectors on your disk, the only way to be absolutely certain your disk is not corrupted is to wipe it and start over using a known good driver. Then, once you have clean working system, if you ever boot with a version of OS2AHCI prior to 1.31, you must assume that the older driver has corrupted your disk again and you have to start over again.

This entry last updated: by David Azarewicz