#
335166 |
|
14-Jun-2018 |
mav |
MFC r325794, r325838 (by imp): Provide link speed data in XPT_GET_TRAN_SETTINGS. Provide full version information for that and XPT_PATH_INQ. Provide macros to encode/decode major/minor versions. Read the link speed and lane count to compute the base_transfer_speed for XPT_PATH_INQ.
|
#
335142 |
|
14-Jun-2018 |
mav |
MFC r328089 (by imp): Move setting of CAM_SIM_QUEUED to before we actually submit it to the hardware. Setting it after is racy, and we can lose the race on a heavily loaded system.
|
#
335139 |
|
14-Jun-2018 |
mav |
MFC r313954 (by imp): Remove obsolete comment after prior rev.
|
#
335138 |
|
14-Jun-2018 |
mav |
MFC r311351 (by rpokala): In the same vein as r311350, fix whitespace in handling of XPT_PATH_INQ in several more drivers.
|
#
328751 |
|
01-Feb-2018 |
mav |
MFC small part of r325794 to fix the build.
|
#
328750 |
|
01-Feb-2018 |
mav |
MFC r327034 (by imp): Return domain, bus, slot, and function for the transport settings in PATH_INQ requests for nvme.
|
#
328702 |
|
01-Feb-2018 |
mav |
MFC r324634 (by imp): Use nvme_ctrlr_poll instead of nvme_ctrlr_intx_handler since it is more general and doesn't try to access registers that may be undefined when the card is in MSIX mode.
This change, along with r324630, r324631, r324632, makes nda crash dumps work again. Previously, they only worked on CPU 0 when the stack garbage was just so.
|
#
328699 |
|
01-Feb-2018 |
mav |
MFC r324075 (by imp): Tweak performance of nda completions
Use xpt_done_direct in preference to xpt_done when completing a successful I/O. Continue to use xpt_done when there's an error, or for completion of the submission of a CCB. This eliminates a context switch to the cam_doneq thread.
|
#
328696 |
|
01-Feb-2018 |
mav |
MFC r322997: Add CAM/NVMe support for CAM_DATA_SG
This adds support in pass(4) for data to be described with a scatter-gather list (sglist) to augment the existing (single) virtual address.
|
#
328691 |
|
01-Feb-2018 |
mav |
MFC r322994: Set the max transactions for NVMe drives better.
Provided a better estimate for the number of transactions that can be pending at one time. This will be number of queues * number of trackers / 4, as suggested by Jim Harris. This gives a better estimate of the number of transactions that CAM should queue before applying back pressure. This should be revisted when we have real multi-queue support in CAM and the upper layers of the I/O stack.
|
#
328683 |
|
01-Feb-2018 |
mav |
MFC r322257 (by imp): Use the correct queue depth for nda devices.
|
#
328681 |
|
01-Feb-2018 |
mav |
MFC r322036 (by imp): Make nvd vs nda choice boot-time rather than build-time
Introduce hw.nvme.use_nvd tunable. This tunable allows both nvd and nda to be installed in the kernel, while allowing only one of them to create devices. This is an all-or-nothing setting, and you can't change it after boot-time. However, it will allow easier A/B testing.
|
#
328680 |
|
01-Feb-2018 |
mav |
MFC r320984 (by imp): This adds CAM pass(4) support for NVMe IO's. Applications indicate the IO type (Admin or NVM) using XPT op-codes XPT_NVME_ADMIN or XPT_NVME_IO.
|
#
328666 |
|
01-Feb-2018 |
mav |
MFC r303466: Kill a few stray debug printfs.
|
#
328665 |
|
01-Feb-2018 |
mav |
MFC r303126 (by imp): Actually import nvme_sim so the CAM attachment for NVME (nda) actually works.
|