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
Sepherosa Ziehau
6fd14eb940
hyperv/vmbus: Only make sure the TX bufring will not be closed.
...
KVP can write data, whose size is > 1/2 TX bufring size.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7414
2016-08-05 08:57:51 +00:00
Sepherosa Ziehau
8d17f17043
hyperv/storvsc: Claim SPC-3 conformance, thus enable UNMAP support
...
The Hyper-V on pre-win10 systems will only report SPC-2 conformance,
but it actually conforms to SPC-3. The INQUIRY response is adjusted
to propagate the SPC-3 version information to CAM.
Submitted by: Hongjiang Zhang <honzhan microsoft com>
MFC after: 3 days
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7405
2016-08-04 05:05:35 +00:00
Sepherosa Ziehau
05f7a8a69c
hyperv/storvsc: Stringent PRP list assertions
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7361
2016-08-01 05:09:11 +00:00
Sepherosa Ziehau
88cb8d7812
hyperv/storvsc: Set maxio to 128KB.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7360
2016-08-01 04:51:31 +00:00
Sepherosa Ziehau
9d6016a773
hyperv/vmbus: Remove the artificial entry limit of SG and PRP list.
...
Just make sure that the total channel packet size does not exceed 1/2
data size of the TX bufring.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7359
2016-08-01 04:26:24 +00:00
Sepherosa Ziehau
cf6890fbdc
hyperv/storvsc: Use busdma(9) and enable PIM_UNMAPPED by default.
...
The UNMAPPED I/O greatly improves userland direct disk I/O performance
by 35% ~ 135%.
Submitted by: Hongjiang Zhang <honzhan microsoft com>
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7195
2016-07-29 06:22:11 +00:00
Sepherosa Ziehau
c0c9089709
hyperv/vmbus: Revoke unnecessary exposure of vmbus softc
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7348
2016-07-29 06:10:27 +00:00
Sepherosa Ziehau
fd42dfc550
hyperv/vmbus: Move driver glue to the beginning of the files
...
Just as most of other drivers do. And move sysinit function close
to its SYSINIT.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7347
2016-07-29 05:58:24 +00:00
Sepherosa Ziehau
5b444edabc
hyperv/vmbus: Forward declare static functions
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7346
2016-07-29 05:49:12 +00:00
Sepherosa Ziehau
8018156f90
hyperv/vmbus: Reindent function declarations.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7344
2016-07-29 03:16:51 +00:00
Sepherosa Ziehau
7d8ee480c4
hyperv/vmbus: Inclusion cleanup
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7334
2016-07-28 06:46:10 +00:00
Sepherosa Ziehau
0bc135dffc
hyperv/vmbus: Avoid unnecessary mb()
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7333
2016-07-28 06:30:29 +00:00
Sepherosa Ziehau
dc831186e3
hyperv/vmbus: Rename cleaned up bufring code
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7318
2016-07-27 09:27:08 +00:00
Sepherosa Ziehau
b5ddb4093a
hyperv/vmbus: Cleanup RX bufring read process.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7317
2016-07-27 07:36:54 +00:00
Sepherosa Ziehau
3ddfec1f17
hyperv/vmbus: Stringent RX bufring data length checks.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7316
2016-07-27 07:19:06 +00:00
Sepherosa Ziehau
455cc95f3f
hyperv/vmbus: Cleanup TX bufring write process.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7315
2016-07-27 06:52:43 +00:00
Sepherosa Ziehau
ca7c18e5c4
hyperv/vmbus: Update comment for bufring
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7314
2016-07-27 06:36:57 +00:00
Sepherosa Ziehau
ea06b5d3ec
hyperv/vmbus: Use different struct for RX/TX bufring.
...
So that they can use suitable MP synchronization mechanism.
While I'm here change the bufring init/read/write function names.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7313
2016-07-27 06:17:20 +00:00
Sepherosa Ziehau
a0c3998ea9
hyperv/vmbus: Initialize RX/TX bufring mutex at channel creation time
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7312
2016-07-27 05:47:32 +00:00