-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Description
Currently, the AHCI driver allocates a new buffer layout and only passes its virtual address to the Host Bus Adapter (HBA) Port. On some machines, this results in the port's command issue (port.ci) polling running indefinitely due to misallocation of the Frame Information Structure (FIS).
Expected Behavior
- Read buffers should be allocated in a way that ensures the HBA Port receives a valid physical address.
port.cipolling should complete as expected without hanging.
Actual Behavior
- The current implementation provides only a virtual address, which causes
port.cipolling to run indefinitely on some machines. - The Frame Information Structure (FIS) is misallocated, preventing proper command execution.
Steps to Reproduce
- Run the AHCI driver on affected hardware.
- Issue a read operation.
- Observe that
port.cipolling does not complete.
Proposed Fix
Modify the AHCI driver to allocate read buffers in the physical address space before passing them to the HBA Port.
Environment
- Affected machines: will specify Firmware and Open TianoCore version later
- Kernel version: 0.4 - bubblewrap
Additional Context
This issue seems to arise due to improper memory allocation for the FIS. Ensuring that read buffers reside in the correct physical address space should resolve the problem.
Metadata
Metadata
Assignees
Labels
No labels