Bug 260200 - AHCI emulation throws CAM errors when backed by -t malloc memory disk devices
Summary: AHCI emulation throws CAM errors when backed by -t malloc memory disk devices
Status: New
Alias: None
Product: Base System
Classification: Unclassified
Component: bhyve (show other bugs)
Version: 13.0-RELEASE
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-virtualization (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-12-04 06:10 UTC by Michael Dexter
Modified: 2021-12-04 06:10 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Dexter 2021-12-04 06:10:44 UTC
If a bhyve emulated AHCI device is backed by a 'mdconfig -t malloc' memory disk device, variations on this simple fio(1) test:

fio --name=bhyve --rw=write --runtime=1 --time_based --filename=/dev/ada0 --bs=512b --size=512b

Produces these errors logged in the system messages:

(ada0:ahcich0:0:0:0): FLUSHCACHE48. ACB: ea 00 00 00 00 40 00 00 00 00 00 00
(ada0:ahcich0:0:0:0): CAM status: ATA Status Error
(ada0:ahcich0:0:0:0): ATA status: 41 (DRDY ERR), error: 04 (ABRT )
(ada0:ahcich0:0:0:0): RES: 41 04 00 00 00 40 00 00 00 00 00
(ada0:ahcich0:0:0:0): Retrying command, 0 more tries remain
(ada0:ahcich0:0:0:0): FLUSHCACHE48. ACB: ea 00 00 00 00 40 00 00 00 00 00 00
(ada0:ahcich0:0:0:0): CAM status: ATA Status Error
(ada0:ahcich0:0:0:0): ATA status: 41 (DRDY ERR), error: 04 (ABRT )
(ada0:ahcich0:0:0:0): RES: 41 04 00 00 00 40 00 00 00 00 00
(ada0:ahcich0:0:0:0): Error 5, Retries exhausted
(ada0:ahcich0:0:0:0): Synchronize cache failed

The error is consistent with repeat runs and variations on the fio syntax.

The virtio-blk and nvme devices do not exhibit this behavior.