Switch to linker sets to find the xport callback object. This
eliminates the need to special case everything in cam_xpt for new
transports. It is now a failure to not have a transport object when
registering the bus as well.
Details
Details
Diff Detail
Diff Detail
- Repository
- rS FreeBSD src repository - subversion
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
Comment Actions
- Switch to linker sets to find the xport callback object. This
- Include NVMe transport and direct access devices on amd64.
- Switch to linker sets to find the protocol callback object.
sys/cam/cam_xpt.c | ||
---|---|---|
3915 ↗ | (On Diff #18685) | Won't this behave differently compared to the original? Should this be new_bus->xport = &xport_default; ? |
sys/cam/cam_xpt.c | ||
---|---|---|
3915 ↗ | (On Diff #18685) | That assignment was never needed, since it was redundant after line 3889 (new file numbering). It also underscores that fact that you're no longer allowed to create a transport of an unknown / unspecified type. |
sys/cam/cam_xpt.c | ||
---|---|---|
3915 ↗ | (On Diff #18685) | Ah, I figured there was a good reason, but wanted to ask. |