CAM is the Common Access Method storage subsystem in FreeBSD, providing a uniform and modular method implementing drivers to control various SCSI ATA, NVMe, and MMC/SD storage devices.
Provide a means of specifying a cam_path filter for xpt_register_async() and still get the initial broadcast of related events that occurs if the path is not specified today, with the filter applied.
Modify cam_ed so that transport-specific parts are in an union instead of alongside each other. Might be best to move those structures into transport-specific headers too.