Sepherosa Ziehau
cc3d96db55
hyperv/hn: Use vmbus xact for RNDIS query.
...
And switch MAC address query to use new RNDIS query function.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7639
2016-08-26 05:12:09 +00:00
Sepherosa Ziehau
9db7c2c6b5
hyperv/storvsc: Increase queue depth and rework channel selection.
...
- Increasing queue depth gives ~100% performance improvement for
randwrite fio test in Azure.
- New channel selection, which takes LUN id and the current cpuid
into consideration, gives additional ~20% performance improvement
for ranwrite fio test in Azure.
Submitted by: Hongzhang Jiang <honzhan microsoft com>
Modified by: sephe
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7622
2016-08-25 05:50:19 +00:00
Sepherosa Ziehau
dd9af4103b
hyperv/vmbus: Add function to calculate max # of elements in a bufring.
...
MFC after: 1 week
Sponsored by: Microsoft
2016-08-25 05:35:51 +00:00
Sepherosa Ziehau
c72fc9d2b9
hyperv/ic: Update total message size if negotiate message size grows.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7627
2016-08-25 05:24:57 +00:00
Sepherosa Ziehau
02d9926559
hyperv/ic: Cleanup heartbeat channel callback.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7626
2016-08-25 05:11:04 +00:00
Sepherosa Ziehau
550bbdbd27
hyperv/hn: Use vmbus xact for RNDIS initialize.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7624
2016-08-25 05:00:41 +00:00
Sepherosa Ziehau
fec38279d8
hyperv/hn: Add compat code for RNDIS reorganization phase.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7621
2016-08-25 04:52:50 +00:00
Sepherosa Ziehau
6cc86f82b7
hyperv/hn: Use definition in net/rndis.h for message type and status code.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7620
2016-08-25 04:40:51 +00:00
Sepherosa Ziehau
8f555c7d0a
hyperv/ic: Redefine IC version negotiate message.
...
And stringent input IC version negotiate message checks.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7614
2016-08-24 04:36:04 +00:00
Sepherosa Ziehau
aa4a62df05
hyperv/hn: Log a warning for RESET_CMPLT.
...
RESET is not used by the hn(4) at all, and RESET_CMPLT does not even
have a rid to match with the pending requests. So, let's put it
onto an independent switch branch and log a warning about it.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7602
2016-08-24 04:21:15 +00:00
Sepherosa Ziehau
d51ce2d164
hyperv/hn: Remove the redundant rid setting for RNDIS HALT.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7595
2016-08-24 03:28:58 +00:00
Sepherosa Ziehau
2e5573e6de
hyperv/hn: Factor out function to simplify NVS request sending
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7578
2016-08-22 08:00:14 +00:00
Sepherosa Ziehau
8f556f2598
hyperv/hn: Factor out function to execute NVS transactions.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7577
2016-08-22 07:51:46 +00:00
Sepherosa Ziehau
ef56e63fb3
hyperv/hn: Get rid of netvsc_dev
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7575
2016-08-22 07:44:11 +00:00
Sepherosa Ziehau
fdd6031b04
hyperv/hn: Move chimney sending buffer to hn_softc
...
And don't recreate chimney sending buffer for each primary channel
open, it is now created in device_attach DEVMETHOD and destroyed
in device_detach DEVMETHOD.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7574
2016-08-22 07:34:39 +00:00
Sepherosa Ziehau
852710e6db
hyperv/hn: Move RXBUF to hn_softc
...
And don't recreate RXBUF for each primary channel open, it is now
created in device_attach DEVMETHOD and destroyed in device_detach
DEVMETHOD.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7556
2016-08-19 05:43:28 +00:00
Sepherosa Ziehau
d981413bcb
hyperv/hn: Remove the useless num_channel
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7555
2016-08-19 05:30:39 +00:00
Sepherosa Ziehau
2a137ab6fd
hyperv/hn: Remove assign-only struct field
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7554
2016-08-19 05:20:12 +00:00
Sepherosa Ziehau
0366a4a1e0
hyperv/hn: Move NVS version to softc
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7553
2016-08-19 03:32:04 +00:00
Sepherosa Ziehau
5afcbd41b5
hyperv/kvp: Remove unnecessary function parameter.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7550
2016-08-18 06:03:55 +00:00
Sepherosa Ziehau
8caa09bd36
hyperv/hn: Get rid of the useless netvsc_packet
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7544
2016-08-18 05:52:03 +00:00
Sepherosa Ziehau
5aa07ccdd7
hyperv/hn: Constify RNDIS messages on RX path.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7542
2016-08-18 05:44:58 +00:00
Sepherosa Ziehau
83ecbf4d6a
hyperv/hn: Pass RX packet info to netvsc_recv.
...
This paves to nuke netvsc_packet, which does not serves much
purpose now.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7541
2016-08-18 05:33:58 +00:00
Sepherosa Ziehau
c4b78a2628
hyperv/util: Factor out helper for IC device_probe DEVMETHOD
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7530
2016-08-17 08:38:49 +00:00
Sepherosa Ziehau
eacbe92463
hyperv/util: Don't reference hn_softc in KVP
...
hn_softc is private data struct.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7519
2016-08-17 08:26:08 +00:00
Sepherosa Ziehau
bf965e6dee
hyperv/hn: Get rid of unused bits
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7518
2016-08-17 05:57:10 +00:00
Sepherosa Ziehau
85c8f64b0b
hyperv/hn: Remove reference to nvsp_status
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7517
2016-08-17 05:45:57 +00:00
Sepherosa Ziehau
8b55644bae
hyperv/hn: Remove reference to nvsp_msg
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7516
2016-08-17 05:34:02 +00:00
Sepherosa Ziehau
5f0dee26f1
hyperv/hn: Simplify RNDIS RX packets acknowledgement.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7515
2016-08-17 05:25:47 +00:00
Sepherosa Ziehau
46911ec745
hyperv/hn: Ignore the useless TX table.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7514
2016-08-17 05:14:26 +00:00
Sepherosa Ziehau
86afc9b625
hyperv/storvsc: Deliver CAM_SEL_TIMEOUT upon SRB status error.
...
SRB status is set to 0x20 by the hypervisor, if the specified LUN is
unaccessible, and even worse the INQUIRY response will not be set by
the hypervisor at all under this situation. Additionally, SRB status
is 0x20 too, for TUR on an unaccessible LUN.
Deliver CAM_SEL_TIMEOUT to CAM upon SRB status errors as suggested by
Scott Long, other values seems improper.
This commit fixes the Hyper-V disk hotplug support.
Submitted by: Hongjiang Zhang <honzhan microsoft com>
MFC after: 3 days
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7521
2016-08-17 05:02:18 +00:00
Sepherosa Ziehau
de56155fe0
hyperv/hn: Simplify RNDIS message checks on RX path.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7502
2016-08-16 07:45:35 +00:00
Sepherosa Ziehau
62c4e6e992
hyperv/hn: Simplify RNDIS NVS message sending.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7501
2016-08-16 07:37:02 +00:00
Sepherosa Ziehau
5ac4acb202
hyperv/hn: Factor out hn_nvs_send/hn_nvs_send_sglist
...
Avoid unnecessary message type setting and centralize the send context
to transaction id cast.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7500
2016-08-16 07:26:53 +00:00
Sepherosa Ziehau
0f9b848541
hyperv/hn: Switch to vmbus xact APIs for sub-channel alloc request.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7480
2016-08-15 05:08:41 +00:00
Sepherosa Ziehau
a04b666a04
hyperv/hn: Simplify chimney sending buffer disconnection.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7479
2016-08-15 05:00:37 +00:00
Sepherosa Ziehau
8b204d6643
hyperv/hn: Simplify RXBUF disconnection.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7472
2016-08-12 08:29:26 +00:00
Sepherosa Ziehau
55c4b97bfa
hyperv/hn: Switch to vmbus xact APIs for NVS chimney buffer connection.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7470
2016-08-12 08:21:02 +00:00
Sepherosa Ziehau
d293af4049
hyperv/hn: Switch to vmbus xact APIs for NVS RXBUF connection.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7469
2016-08-12 08:07:56 +00:00
Sepherosa Ziehau
386c97e616
hyperv/hn: Simplify NDIS initialization.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7467
2016-08-12 07:57:03 +00:00
Sepherosa Ziehau
9b3922212a
hyperv/hn: Simplify NDIS configuration.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7466
2016-08-12 07:14:40 +00:00
Sepherosa Ziehau
3dba61dd3c
hyperv/vmbus: Use xact APIs to implement post message Hypercall APIs
...
Avoid code duplication.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7458
2016-08-11 06:24:17 +00:00
Sepherosa Ziehau
584e7c57f1
hyperv/hn: Switch to vmbus xact APIs for NVS initialization
...
Reviewed by: Jun Su <junsu microsoft com>
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7457
2016-08-11 06:14:54 +00:00
Sepherosa Ziehau
6212aa15fc
hyperv/vmbus: Add APIs for various types of transactions.
...
Reviewed by: Jun Su <junsu microsoft com>
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7456
2016-08-11 05:49:49 +00:00
Sepherosa Ziehau
99fc691eec
hyperv/vmbus: Add macro to get channel packet data length.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7455
2016-08-11 03:20:38 +00:00
Sepherosa Ziehau
127d6d1a64
hyperv/hn: Reorganize send done callback.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7450
2016-08-10 03:11:07 +00:00
Sepherosa Ziehau
b5070c1829
hyperv/hn: Move gpa array out of netvsc_packet.
...
Prepare to deprecate the netvsc_packet.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7436
2016-08-09 04:50:20 +00:00
Sepherosa Ziehau
f077729dbd
hyperv/ic: Pass the channel callback to hv_util_attach()
...
The saved channel callback in util softc is actually never used.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7424
2016-08-08 06:18:54 +00:00
Sepherosa Ziehau
9b6306f287
hyperv/ic: Expose the receive buffer length for callers to use.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7423
2016-08-08 06:11:28 +00:00
Sepherosa Ziehau
f5207880ba
hyperv/ic: Remove never used second parameter of hv_negotiate_version()
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7422
2016-08-08 05:57:38 +00:00