sephe
9bc99b737b
hyperv/hn: Fix VLAN tag construction.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7716
2016-09-01 07:04:47 +00:00
sephe
fea56cd2fd
hyperv/hn: Stringent per-packet-info verification.
...
While I'm here, minor style changes.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7709
2016-09-01 06:05:08 +00:00
sephe
51bada0ecf
hyperv/hn: Remove unused function
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7706
2016-09-01 05:29:58 +00:00
sephe
6949bf9f3f
hyperv/timesync: Rework time adjustment policy
...
- By default, adjust time upon SYNC request. It can be disabled
through hw.hvtimesync.ignore_sync_req. SYNC request will be
sent by hypervisor the host is resumed, rebooted, etc.
- By default, adjust time upon SAMPLE request, if there is 100ms
difference between VM time and hypervisor time. This can be
disabled through hw.hvtimesync.sample_drift.
And nuke the unnecessary task, since channel callback is running
in a Hyper-V taskqueue nowadays.
Submitted by: YanZhe Chen <t-yachen microsoft com>
Discussed with: Dexuan Cui <decui microsoft com>, Hongjiang Zhang <honzhan microsoft com>, sephe
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7707
2016-08-31 06:00:20 +00:00
sephe
5c3601c645
hyperv/hn: Consolidate NVS transaction execution.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7704
2016-08-31 05:27:30 +00:00
sephe
2f84fd716e
hyperv/hn: Remove unnecessary NULL check.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7690
2016-08-30 05:47:58 +00:00
sephe
55b4260579
hyperv/hn: Log packet message alignment.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7689
2016-08-30 05:35:19 +00:00
sephe
41918d1106
hyperv/hn: Remove the useless rndis_device and related bits
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7687
2016-08-30 05:21:34 +00:00
sephe
63a72a7723
hyperv/hn: Switch to new RNDIS transaction execution for halt.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7686
2016-08-30 05:09:26 +00:00
sephe
9d4e07fea8
hyperv/hn: Factor out func to exec RNDIS transaction w/o checking result
...
It will be used by RNDIS HALT and RESET.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7685
2016-08-30 04:04:29 +00:00
sephe
f0b1e3f94c
hyperv/hn: Remove unused function
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7684
2016-08-30 03:55:43 +00:00
sephe
e64ce689a5
hyperv/hn: Switch to new RNDIS set for RX filters.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7683
2016-08-30 03:40:22 +00:00
sephe
f3fa9706f1
net/rndis: Packet types are defined by NDIS; not RNDIS specific.
...
Reviewed by: hps
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7681
2016-08-30 03:11:07 +00:00
sephe
34a8e48444
hyperv/hn: Indentation and field comment fixup for ndis.h.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7680
2016-08-30 03:03:19 +00:00
sephe
465861b3f3
hyperv/hn: Move OIDs to net/rndis.h; they are standard NDIS OIDs.
...
Actually all OIDs defined in net/rndis.h are standard NDIS OIDs.
While I'm here, use the verbose macro name as in NDIS spec.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7679
2016-08-30 02:55:07 +00:00
sephe
e6580be47d
hyperv/hn: Switch to new RNDIS set for RSS parameters.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7658
2016-08-29 05:35:35 +00:00
sephe
74f52cbba9
hyperv/hn: Fix # of channels setting, if RSS is not available.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7657
2016-08-29 05:08:53 +00:00
sephe
a9589796bc
hyperv/hn: Switch to new RNDIS query for RSS capabilities extraction.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7656
2016-08-29 04:54:13 +00:00
sephe
f58263378e
hyperv/hn: Switch to new RNDIS query for link status extraction.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7654
2016-08-29 04:44:24 +00:00
sephe
d9a088e165
hyperv/hn: Add definition for NDIS media state.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7652
2016-08-29 03:22:56 +00:00
sephe
ccf7079f91
hyperv/hn: Use vmbus xact for RNDIS set.
...
And use new RNDIS set to configure NDIS offloading parameters.
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7641
2016-08-26 05:18:27 +00:00
sephe
68e90f3a55
hyperv/hn: Save the adopted NDIS version for RNDIS to use later.
...
MFC after: 1 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7640
2016-08-26 05:15:08 +00:00
sephe
54142c676e
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
sephe
4dc6a90e5f
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
sephe
b864f0ef69
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
sephe
dad64e9862
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
sephe
29337f1b1b
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
sephe
dcbc2f8fcd
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
sephe
87e8626558
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
sephe
5b9ae032f1
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
sephe
50f4719b11
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
sephe
afdb7b42e8
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
sephe
1d1770e55b
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
sephe
bb5254e846
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
sephe
0cc5137c63
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
sephe
3073b8bd93
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
sephe
893260f870
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
sephe
f9f5c03d33
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
sephe
d5c4557735
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
sephe
4cfbfb09e4
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
sephe
8a5dd6d3fa
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
sephe
55d14b7341
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
sephe
c8a9b96e6e
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
sephe
d48b69133f
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
sephe
39e56f00e0
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
sephe
c24d51a7f2
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
sephe
6b1ea3b570
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
sephe
4561a8d9c2
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
sephe
93e9768e25
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
sephe
ee90d2aeb3
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
sephe
3d5002ca01
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
sephe
4dccd19522
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
sephe
336a9723e0
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
sephe
e1f56cc39c
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
sephe
86f8b8d983
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
sephe
b2c45dd531
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
sephe
272ccfa447
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
sephe
374f44eb48
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
sephe
37d8963135
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
sephe
684039b4f5
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
sephe
9fe9108fd6
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
sephe
41454cb775
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
sephe
dc65554f90
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
sephe
9bfc057440
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
sephe
f013a29591
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
sephe
88b2243c5a
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
sephe
5a7b37f270
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
sephe
71e8fde12e
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
sephe
572ce929c2
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
sephe
09307c0dd0
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
sephe
212da37ab3
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
sephe
1cad2f4090
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
sephe
eb3942a343
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
sephe
4b9098483e
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
sephe
0fe87551af
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
sephe
20e31bda3a
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
sephe
db2d1992dc
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
sephe
0bce0d8016
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
sephe
78c8dd4eed
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
sephe
14a0ac609e
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
sephe
411cc97b94
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
sephe
20fd9fe3c8
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
sephe
e25fea92c5
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
sephe
39ec7142ff
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
sephe
3202a130ab
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
sephe
cf9435425a
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
sephe
7718d7bb79
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
sephe
d60be6e7f1
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
sephe
b1f601813e
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
sephe
3ddc289828
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
sephe
9196141e81
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
sephe
4803420069
hyperv/vmbus: Nuke unnecessary accessor functions.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7303
2016-07-26 05:06:00 +00:00
sephe
5ae29845fa
hyperv/vmbus: Move bufring info definition to vmbus_brvar.h
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7282
2016-07-25 03:30:26 +00:00
sephe
bd9f2e3fe1
hyperv/vmbus: Rename hv_vmbus_priv.h to vmbus_brvar.h
...
It only contains bufring related bits for a while.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7281
2016-07-25 03:12:40 +00:00
sephe
66d14e48cc
hyperv/vmbus: Move vmbus bufring definition to vmbus_reg.h
...
And add more comment about its fields.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7269
2016-07-22 05:09:08 +00:00
sephe
f2317f1d8f
hyperv/vmbus: Cleanup and augment bufring sysctl tree creation
...
Binary state node is added, so that userland programs do not have
to parse human readable state string.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7268
2016-07-22 03:42:32 +00:00
sephe
ab64e0a11c
hyperv/vmbus: Cosmetic bufring cleanup.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7267
2016-07-22 03:30:00 +00:00
sephe
a76f7615f9
hyperv: hv_vmbus_channel -> vmbus_channel
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7260
2016-07-21 06:09:47 +00:00
sephe
0e71cf638c
hyperv/vmbus: Shuffle function declaration and macro definition.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7259
2016-07-21 05:46:26 +00:00
sephe
41ee361895
hyperv/vmbus: Reorder channel fields.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7258
2016-07-21 05:38:05 +00:00
sephe
dd759fdea0
hyperv/vmbus: Save event flag location and evet flag mask.
...
This avoids unnecessary access to the vmbus_softc struct on sending path.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7257
2016-07-21 05:30:31 +00:00
sephe
e32ef6ab89
hyperv/vmbus: Save MNF trigger location instead of MNF trigger index.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7246
2016-07-20 06:12:32 +00:00
sephe
018951c513
hyperv/vmbus: Hide channel struct definition.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7245
2016-07-20 06:00:27 +00:00
sephe
b9b8074b2e
hyperv/vmbus: Deprecate the device private data in channel struct
...
They are neither flexible nor extensible.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7244
2016-07-20 05:48:52 +00:00
sephe
ae2759f1e4
hyperv/vmbus: Pass channel as the first argument for channel callback
...
The prepares to kill device private fields in channel struct, which
are not flexible and extensible.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7243
2016-07-20 05:34:28 +00:00
sephe
3baa357428
hyperv/vmbus: Channel struct field rename
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7242
2016-07-20 05:26:04 +00:00
sephe
3bcc502527
hyperv/vmbus: Move IC register definition to Hyper-V utilities
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7241
2016-07-20 05:16:23 +00:00
sephe
7f73bf05b0
hyperv/vmbus: Get rid of unnecessary definition.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7240
2016-07-20 05:03:04 +00:00
sephe
9028435378
hyperv/vmbus: Rename laundered vmbus channel code
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7232
2016-07-19 07:51:22 +00:00
sephe
edcb0937ea
hyperv/vmbus: Temp/internal variable/function rename
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7231
2016-07-19 06:04:44 +00:00
sephe
a065e1fbe1
hyperv/vmbus: Function rename
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7230
2016-07-19 05:57:19 +00:00
sephe
7ed04d956a
hyperv/vmbus: Cleanup cpu based channel selection.
...
And create cpu to channel map at device attach time for storvsc(4).
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7229
2016-07-19 05:46:15 +00:00
sephe
682879488a
hyperv/vmbus: Cosmetic vmbus channel open cleanup
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7217
2016-07-18 05:36:31 +00:00
sephe
ea266fe243
hyperv/vmbus: Cleanup channel sysctl tree creation
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7214
2016-07-15 08:40:22 +00:00
sephe
ff5036688e
hyperv/vmbus: Cosmetic vmbus channel close cleanup
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7213
2016-07-15 08:31:53 +00:00
sephe
ef6b6cbf46
hyperv/vmbus: Function rename
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7212
2016-07-15 08:23:33 +00:00
sephe
3491a0177c
hyperv/vmbus: Back out r302888 temporarily
...
Committed by accident w/ duplicated commit log
MFC after: 1 week
Sponsored by: Microsoft OSTC
2016-07-15 08:13:44 +00:00
sephe
e7d187d843
hyperv/hn: Busdma-fy rxbuf and chimney sending buffer
...
Nuke unused channel GPADL API.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7211
2016-07-15 08:08:13 +00:00
sephe
6d3cd9ab4a
hyperv/hn: Busdma-fy rxbuf and chimney sending buffer
...
Nuke unused channel GPADL API.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7211
2016-07-15 08:06:48 +00:00
sephe
b17c393ac0
hyperv/vmbus: Cleanup channel packet receiving.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7204
2016-07-15 07:53:45 +00:00
sephe
b3c68b33ee
hyperv/vmbus: Cleanup channel receiving.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7202
2016-07-15 07:45:30 +00:00
sephe
a63b8b4b63
hyperv/vmbus: Factor out macros to do channel packet length conversion.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7194
2016-07-15 07:35:01 +00:00
sephe
e3d23c0367
hyperv/vmbus: Field rename
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7193
2016-07-15 07:26:31 +00:00
sephe
61e1edf748
hyperv/vmbus: Function rename
...
And reorder the error prone parameters list.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7191
2016-07-15 07:16:46 +00:00
sephe
e5034558ec
hyperv/vmbus: Cleanup channel sending
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7178
2016-07-15 07:07:17 +00:00
sephe
d5273e35be
hyperv/vmbus: Move channel packet types definition to vmbus.h
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7177
2016-07-15 06:58:21 +00:00
sephe
36aeaa4457
hyperv/vmbus: Move channel packet flags definition to vmbus.h
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7176
2016-07-15 06:49:45 +00:00
sephe
575d5bbbc9
hyeprv/vmbus: Rework prplist sending.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7175
2016-07-15 06:40:59 +00:00
sephe
9b6f771362
hyperv/vmbus: Rework sglist sending.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7156
2016-07-15 06:29:19 +00:00
sephe
2bab08ccf2
hyperv/vmbus: Redefine channel packet.
...
The channel packet header will be shared w/ PRP (physical region page)
list channel packet and SG (scatter gather) list channel packet.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7155
2016-07-15 06:16:39 +00:00
sephe
f7879d9f33
hyperv/vmbus: Field rename
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7146
2016-07-15 06:08:48 +00:00
sephe
69496392ed
hyperv/vmbus: Set vcpuid to 0, if MSR_HV_VP_INDEX does not exist.
...
Mainly for compatibility. While I'm here, rename cpuid related
fields in hv_vmbus_channel.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7141
2016-07-15 05:59:27 +00:00
sephe
fe99c6a247
hyperv/vmbus: Busdma-fy channel bufring.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7140
2016-07-15 05:51:58 +00:00
sephe
65f03aefc4
hyperv/vmbus: Add vmbus_chan_gpadl_connect, which takes GPA physaddr
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7139
2016-07-15 05:40:34 +00:00
sephe
5e44fc0871
hyperv/vmbus: Use iovec for bufring scatter/gather list.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7134
2016-07-15 05:29:04 +00:00
sephe
8337a84531
hyperv/vmbus: Remove unused function definition/declaration.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7131
2016-07-15 05:15:21 +00:00
sephe
b9fd9c46b0
hyperv/vmbus: Function rename
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7129
2016-07-15 05:06:15 +00:00
sephe
ffc3ec7c89
hyperv/vmbus: Remove unused struct
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7127
2016-07-15 04:54:07 +00:00
sephe
dc2684d3a5
hyperv/vmbus: Merge hv_channel_mgmt.c into hv_channel.c
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7126
2016-07-15 04:42:08 +00:00
sephe
55e82d913f
hyperv/vmbus: Move bus related message processing into vmbus.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7125
2016-07-14 08:40:59 +00:00
sephe
d0e66a45d5
hyperv/vmbus: Sub-channel related fields renaming
...
And reorganize comment.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7113
2016-07-14 08:15:13 +00:00
sephe
b9dddaba1f
hyperv/vmbus: Fix the racy channel close.
...
It is not safe to iterate the sub-channel list w/o lock on the
close path, while it's even more difficult to hold the lock
and iterate the sub-channel list. We leverage the
vmbua_{get,rel}_subchan() functions to solve this dilemma.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7112
2016-07-14 07:59:01 +00:00
sephe
632673c3cb
hyperv/vmbus: Field renaming to reflect reality
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7111
2016-07-14 07:48:26 +00:00
sephe
1d5eeebc86
hyperv/vmbus: Release vmbus channel lock before detach devices
...
Device detach method may sleep.
While I'm here, rename the function, fix indentation and function
comment.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7110
2016-07-14 07:39:34 +00:00
sephe
9f740dd350
hyperv/vmbus: Only add primary channels to vmbus channel list
...
- Make the vmbus_chan_add more straightforward.
- Partially fix the hv_vmbus_release_unattached_channels().
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7109
2016-07-14 07:31:43 +00:00
sephe
089d55deb2
hyperv/vmbus: Use sub-channel index to detect primary channel
...
In case that VMBUS_CHAN_ISPRIMARY is needed in the early place of
channel setup.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7108
2016-07-14 07:24:03 +00:00
sephe
e09f507913
hyperv/vmbus: Cleanup vmbus_chan_add()
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7106
2016-07-14 07:08:59 +00:00
sephe
611248e7f0
hyperv/vmbus: Nuke the channel open state.
...
Channel is either opened or not-opened.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7105
2016-07-14 06:59:04 +00:00
sephe
ebd466b0f7
hyperv/vmbus: Cleanup vmbus_chan_msgproc_choffer
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7104
2016-07-14 06:48:24 +00:00
sephe
1cbc5132af
hyperv/vmbus: Move new channel scan notification to device register
...
And nuke now unnecessary function indirection.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7103
2016-07-14 06:40:42 +00:00
sephe
224825f7be
hyperv/vmbus: Move device register and channel free to the caller.
...
This paves the way for more cleanup/disentangle.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7102
2016-07-14 06:29:12 +00:00
sephe
9021b311f5
hyperv/vmbus: Alloc/Free monitor param in vmbus channel alloc/free.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7101
2016-07-14 06:18:11 +00:00
sephe
4c55dfb963
hyperv/vmbus: Get rid of rel{_id,id}, use channel id consistently.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7100
2016-07-14 06:10:00 +00:00
sephe
05d204f088
hyperv/vmbus: Remove unused bits
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7095
2016-07-14 06:00:40 +00:00
sephe
392e784792
hyperv/vmbus: Switch to vmbus channel message macros
...
Prepare for more cleanup.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7094
2016-07-14 05:49:14 +00:00
sephe
962908052b
hyperv/vmbus: Move channel offer message definition to vmbus_reg.h
...
- Avoid bit fields.
- Avoid unnecessary indirection.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7093
2016-07-14 05:33:33 +00:00
sephe
eb6a63d671
hyperv: hv_guid -> struct hyperv_guid.
...
This paves way for the further cleanup/disentangle.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7092
2016-07-14 05:25:31 +00:00
sephe
592dc5a9dd
hyperv/vmbus: Remove unused bits
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7091
2016-07-14 05:14:12 +00:00
sephe
f2c0116d53
hyperv/vmbus: Cleanup channel rescind
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7090
2016-07-13 09:44:24 +00:00
sephe
5284a17d46
hyperv/vmbus: Remove unused code
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7089
2016-07-13 09:36:46 +00:00
sephe
776713aedf
hyperv/vmbus: Reorganize MNF event sending.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7088
2016-07-13 09:28:46 +00:00
sephe
d6534dc2b2
hyperv: Signal event input parameter is shared w/ MNF
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7087
2016-07-13 09:19:33 +00:00
sephe
6feb9c9e2d
hyperv: All Hypercall parameters have same alignment requirement.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7086
2016-07-13 09:11:03 +00:00
sephe
5f2e1502f8
hyperv/vmbus: Install different task function for batch/non-batch channels
...
This avoids bunch of unnecessary checks on hot path and simplifies the
channel processing.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7085
2016-07-13 08:30:14 +00:00
sephe
6ef685651b
hyperv/vmbus: Remove unnecessary callback check.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7046
2016-07-13 06:55:21 +00:00
sephe
40a0cd0c7d
hyperv/vmbus: Pack bool field into flags field
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7038
2016-07-13 06:46:29 +00:00
sephe
6b19f5e95c
hyperv/bufring: Remove unused fields
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7037
2016-07-13 06:39:04 +00:00
sephe
f033e62fd3
hyperv/vmbus: Nuke unused field from hv_vmbus_channel.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7036
2016-07-13 06:30:33 +00:00
sephe
b8ae38bff0
hyperv: Get rid of hv_device, which is unnecessary indirection.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7034
2016-07-13 06:17:15 +00:00
sephe
4f58713202
hyperv/hn: Avoid the hv_device
...
This paves way to nuke the hv_device, which is actually an unncessary
indirection.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7033
2016-07-13 05:58:46 +00:00
sephe
0159c1e4b5
hyperv/vmbus: Deprecate the usage of hv_device.
...
This paves way to nuke the hv_device, which is actually an unncessary
indirection.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7032
2016-07-13 05:47:09 +00:00
sephe
a6b8a25abf
hyperv/util: Avoid the hv_device
...
This paves way to nuke the hv_device, which is actually an unncessary
indirection.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7028
2016-07-13 05:35:28 +00:00
sephe
9b892840cd
hyperv/stor: Avoid the hv_device and nuke the broken get_stor_device
...
This paves way to nuke the hv_device, which is actually an unncessary
indirection.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7027
2016-07-13 05:28:07 +00:00
sephe
e9cc4a9f4e
hyperv/vmbus: Add channel ivar accessor.
...
This makes life easier during the transition period to nuke the hv_device.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7026
2016-07-13 05:19:45 +00:00
sephe
8c2d93f18a
hyperv/vmbus: All ivars are read-only; nuke unnecessary write_ivar
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7025
2016-07-13 05:11:45 +00:00
sephe
8bfa0bfb6c
hyperv/vmbus: Add vmbus method for GUID base device probing.
...
Reduce the exposure of hv_device.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7024
2016-07-13 05:01:12 +00:00
sephe
8e81e0f978
hyperv/vmbus: Remove the embedded offer message from hv_vmbus_channel
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7021
2016-07-13 04:51:37 +00:00
sephe
cdcc7208ef
hyperv/vmbus: Add type/instance guid fields into hv_vmbus_channel
...
This prepares to remove the unnecessary offer message embedding in
hv_vmbus_channel.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7020
2016-07-13 04:39:16 +00:00
sephe
da8616cbd8
hyperv/vmbus: Add flags field into hv_vmbus_channel for MNF indication
...
This prepares to remove the unnecessary offer message embedding in
hv_vmbus_channel.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7019
2016-07-13 04:31:08 +00:00
sephe
1dea27b546
hyperv/vmbus: Make subchan index a field of hv_vmbus_channel.
...
This prepares to remove the unnecessary offer message embedding in
hv_vmbus_channel.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7015
2016-07-13 03:35:22 +00:00
sephe
6003f3acd0
hyperv/vmbus: Make channel id a field of hv_vmbus_channel.
...
This prepares to remove the unnecessary offer message embedding in
hv_vmbus_channel.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7014
2016-07-13 03:24:29 +00:00
sephe
4dfc26febb
hyperv/vmbus: Merge hv_connection.c into hv_channel.c
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7004
2016-07-13 03:14:29 +00:00
sephe
056deab5df
hyperv/vmbus: Destroy channel list lock upon attach failure and detach.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7003
2016-07-12 09:06:25 +00:00
sephe
97adb9a66f
hyperv/vmbus: Remove needed bits
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7002
2016-07-12 08:55:08 +00:00
sephe
10f9cb8545
hyperv/vmbus: Move channel map to vmbus_softc
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6982
2016-07-12 08:47:04 +00:00
sephe
95650f7121
hyperv/vmbus: Fix sub-channel re-open support.
...
For multi-channel devices, once the primary channel is closed,
a set of 'rescind' messages for sub-channels will be delivered
by Hypervisor. Sub-channel MUST be freed according to these
'rescind' messages; directly re-openning sub-channels in the
same fashion as the primary channel's re-opening does NOT work
at all.
After the primary channel is re-opened, requested # of sub-
channels will be delivered though 'channel offer' messages, and
this set of newly offered channels can be opened along side with
the primary channel.
This unbreaks the MTU setting for hn(4), which requires re-
openning all existsing channels upon MTU change.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6978
2016-07-12 08:38:03 +00:00
sephe
9eb8845018
hyperv/vmbus: Free sysctl properly upon channel close.
...
Prepare for sub-channel re-open.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6977
2016-07-12 08:28:51 +00:00
sephe
ec334e6f7e
hyperv/vmbus: More verbose for GPADL_connect/chan_{rescind,offer}
...
Reviewed by: Dexuan Cui <decui microsoft com>, Hongjiang Zhang <honzhan microsoft com>
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6976
2016-07-12 08:21:28 +00:00
sephe
8080ef114d
hyperv/vmbus: Move channel list to vmbus_softc
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6956
2016-07-12 08:11:16 +00:00
sephe
efd4115e0c
hyperv/vmbus: Move GPADL index into vmbus_softc
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6954
2016-07-12 07:49:38 +00:00
sephe
0a9d808c0a
hyperv/vmbus: Rework vmbus version accessing.
...
Instead of global variable, vmbus version is accessed through
a vmbus DEVMETHOD now.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6953
2016-07-12 07:33:39 +00:00
sephe
9321cae829
hyperv/vmbus: Minor renaming
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6919
2016-07-12 05:55:11 +00:00
sephe
37a4b5f644
hyperv/vmbus: Don't be oversmart in default cpu selection.
...
Pin the channel to cpu0 by default. Drivers having special channel-cpu
mapping requirement should call vmbus_channel_cpu_{set,rr}() themselves.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6918
2016-07-12 05:31:33 +00:00
sephe
c172a1e56a
hyperv: Nuke unused stuffs
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6917
2016-07-12 05:23:14 +00:00
sephe
96d2197c7c
hyperv/vmbus: Busdma-fy Hypercall signal event input parameter.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6916
2016-07-12 05:09:07 +00:00
sephe
f6675b808d
hyperv/vmbus: Avoid tx_evtflags setting code duplication.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6915
2016-07-12 04:58:21 +00:00
sephe
9194fae8ed
hyperv/vmbus: Flatten channel message response processing.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6914
2016-07-12 04:35:32 +00:00
sephe
bbc8a9fd63
hyperv: Nuke unused stuffs
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6913
2016-07-12 03:38:29 +00:00
sephe
423e60a9f6
hyperv/vmbus: Use post message Hypercall APIs for GPA disconnect
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6912
2016-07-12 03:32:07 +00:00
sephe
214a5c6f9a
hyperv/vmbus: Use post message Hypercall APIs for channel close
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6906
2016-07-12 03:25:36 +00:00