aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/vmware
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/vmware')
-rw-r--r--sys/dev/vmware/pvscsi/pvscsi.c4
-rw-r--r--sys/dev/vmware/vmci/vmci_kernel_if.c4
-rw-r--r--sys/dev/vmware/vmxnet3/if_vmx.c3
3 files changed, 8 insertions, 3 deletions
diff --git a/sys/dev/vmware/pvscsi/pvscsi.c b/sys/dev/vmware/pvscsi/pvscsi.c
index 111330e4f17f..08bdb8c3f108 100644
--- a/sys/dev/vmware/pvscsi/pvscsi.c
+++ b/sys/dev/vmware/pvscsi/pvscsi.c
@@ -1444,6 +1444,10 @@ finish_ccb:
cts->proto_specific.scsi.flags = CTS_SCSI_FLAGS_TAG_ENB;
cts->proto_specific.scsi.valid = CTS_SCSI_VALID_TQ;
+ /* Prefer connection speed over sas port speed */
+ cts->xport_specific.sas.valid &= ~CTS_SAS_VALID_SPEED;
+ cts->xport_specific.sas.bitrate = 0;
+
ccb_h->status = CAM_REQ_CMP;
xpt_done(ccb);
} break;
diff --git a/sys/dev/vmware/vmci/vmci_kernel_if.c b/sys/dev/vmware/vmci/vmci_kernel_if.c
index c7cdf5e3e3d8..e5d5c5160803 100644
--- a/sys/dev/vmware/vmci/vmci_kernel_if.c
+++ b/sys/dev/vmware/vmci/vmci_kernel_if.c
@@ -236,10 +236,10 @@ vmci_alloc_kernel_mem(size_t size, int flags)
*/
void
-vmci_free_kernel_mem(void *ptr, size_t size)
+vmci_free_kernel_mem(void *ptr, size_t size __unused)
{
- contigfree(ptr, size, M_DEVBUF);
+ free(ptr, M_DEVBUF);
}
/*
diff --git a/sys/dev/vmware/vmxnet3/if_vmx.c b/sys/dev/vmware/vmxnet3/if_vmx.c
index fdcad0dd4bba..62b5f313a137 100644
--- a/sys/dev/vmware/vmxnet3/if_vmx.c
+++ b/sys/dev/vmware/vmxnet3/if_vmx.c
@@ -1429,7 +1429,8 @@ vmxnet3_isc_txd_credits_update(void *vsc, uint16_t txqid, bool clear)
return (1);
vmxnet3_barrier(sc, VMXNET3_BARRIER_RD);
- if (++txc->vxcr_next == txc->vxcr_ndesc) {
+ MPASS(txc->vxcr_next < txc->vxcr_ndesc);
+ if (++txc->vxcr_next >= txc->vxcr_ndesc) {
txc->vxcr_next = 0;
txc->vxcr_gen ^= 1;
}