Page MenuHomeFreeBSD

bhyve/virtio-scsi: implement task management functions
Needs ReviewPublic

Authored by rosenfeld_grumpf.hope-2000.org on Oct 20 2025, 5:46 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Dec 11, 3:05 AM
Unknown Object (File)
Thu, Nov 27, 9:19 AM
Unknown Object (File)
Wed, Nov 26, 9:49 PM
Unknown Object (File)
Wed, Nov 26, 11:00 AM
Unknown Object (File)
Sat, Nov 22, 8:50 AM
Unknown Object (File)
Thu, Nov 13, 1:31 AM
Unknown Object (File)
Nov 10 2025, 7:04 PM
Unknown Object (File)
Nov 6 2025, 2:18 PM
Subscribers

Details

Reviewers
jhb
corvink
markj
Group Reviewers
bhyve
Summary

Currently, all I/O requests are queued internally, and a number of
threads will pick I/O requests of the queue and send them to CTL with
a synchronous CTL_IO ioctl. On the other hand, TMF requests are sent
to CTL immediately using the same synchronous ioctl.

Besides being unworkable for non-CTL backends such as for SCSI
passthrough, this simple approach may easily run into situations
where a TMF request operating on a particular I/O request is sent
to CTL while it is still on our queue and thus unknown to CTL.
In addition, for target and/or LUN resets we should really clear
our queue and return all outstanding I/O requests with a proper
status.

This is currently also under review in illumos: https://code.illumos.org/c/illumos-gate/+/4424

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 69050
Build 65933: arc lint + arc unit

Event Timeline

Reword comment in pci_vtscsi_tmf_handle().