xf.is blog

SEND_FPDMA_QUEUED – CAM status: Command timeout on pfSense ZFS install

Published in pfsense.

When installing pfSense 2.5.0 on Seeedstudio Odyssey Blue J4105 I observed the following error message in the system buffer after I selected ZFS install:

ahcich0: is 00000000 cs 00000000 ss 00000080 rs 00000080 tfd 50 serr 00000000 cmd 0000d117
(ada0:ahcich0:0:0:0): SEND_FPDMA_QUEUED DATA SET MANAGEMENT. ACB: 64 01 00 00 00 40 00 00 00 00 00 00
(ada0:ahcich0:0:0:0): CAM status: Command timeout
(ada0:ahcich0:0:0:0): Retrying command, 3 more tries remain

After retrying couple of times the system installed successfully. After install this error caused the boot to stall for some time but it booted successfully.

After some digging around I found out that the system was trying to issue TRIM command to the M.2 SATA SSD (FORESEE 128GB SSD) and failing.

Adding

vfs.zfs.trim.enabled=0

in /boot/loader.conf.local or in System -> Advanced -> System Tunables solved the boot issue and no error messages in the system buffer (dmesg).

This is not ideal disabling TRIM but considering that the I/O and storage requirement for pfSense is very low (apart from logs, packages and system updates) I can live with it.

Currently my install is using ~650 MB of 117GB so I have plenty of free blocks to use before I hit the missing TRIM performance penalty.