Sepherosa Ziehau
60169cb210
hyperv/vmbus: Embed channel detach task in channel itself.
...
GC work queue stuffs.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6864
2016-07-11 08:12:04 +00:00
Sepherosa Ziehau
3e1c325e63
hyperv/vmbus: Save vmbus softc to channels.
...
So that we don't need to access the global vmbus softc.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6863
2016-07-11 07:54:58 +00:00
Sepherosa Ziehau
fd5831c624
hyperv/vmbus: Create channel synchronously.
...
The device probe/attach has been move to a different thread, so the
reasons to create the channel asynchronously are no longer valid.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6862
2016-07-11 07:45:31 +00:00
Sepherosa Ziehau
1ecb24660f
hyperv/vmbus: Use post message Hypercall APIs for unload
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6861
2016-07-11 07:28:15 +00:00
Sepherosa Ziehau
47a3ee5c60
hyperv/vmbus: Add sysctl to expose vmbus version.
...
Requested by: Hongxiong Xian <v-hoxian microsoft com>
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6860
2016-07-11 06:55:02 +00:00
Sepherosa Ziehau
833cfa5fcb
hyperv/vmbus: Explicitly assign channel message process array.
...
While I'm here, remove the useless message type from message process
array, which is not used and serves no purposes at all.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6858
2016-07-11 06:37:04 +00:00
Sepherosa Ziehau
dd012a57a7
hyperv/vmbus: Function renaming.
...
And pass vmbus_softc to vmbus_doattach()
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6842
2016-07-11 06:29:56 +00:00
Sepherosa Ziehau
57bb267df3
hyperv/hn: Add tunable to allow tcp_lro_queue_mbuf()
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6841
2016-07-11 06:23:01 +00:00
Sepherosa Ziehau
c1cc5bdfe8
hyperv/vmbus: Use post message Hypercall APIs for channel request
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6831
2016-07-11 06:11:24 +00:00
Sepherosa Ziehau
2d774f207c
hyperv/stor: Fix the INQUIRY checks
...
Don't check the area that the host has not filled.
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=209443
PR: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=210425
Submitted by: Hongjiang Zhang <honzhan microsoft com>
Reviewed by: sephe, Dexuan Cui <decui microsoft com>
MFC after: 3 days
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6955
2016-07-11 05:17:48 +00:00
Sepherosa Ziehau
236764b1c2
hyperv/vmbus: Implement a new set of APIs for post message Hypercall
...
And use this new APIs for Initial Contact post message Hypercall.
More post message Hypercalls will be converted.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6830
2016-07-11 04:52:11 +00:00
Sepherosa Ziehau
51a9a000ee
hyperv/vmbus: Change tx_evtflags type to u_long to match vmbus_evtflags
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6745
2016-06-08 07:47:21 +00:00
Sepherosa Ziehau
6523ab7e00
hyperv/vmbus: Busdma-fy MNF and event flags.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6744
2016-06-08 05:34:22 +00:00
Sepherosa Ziehau
36ad8372d4
net: Use M_HASHTYPE_OPAQUE_HASH if the mbuf flowid has hash properties
...
Reviewed by: hps, erj, tuexen
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6688
2016-06-07 04:51:50 +00:00
Sepherosa Ziehau
43926ba13f
hyperv/vmbus: Constify channel message
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6708
2016-06-06 07:39:44 +00:00
Sepherosa Ziehau
12ea25ae4f
hyperv/vmbus: Factor out channel message processing
...
This paves the way for further cleanup.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6707
2016-06-06 07:27:57 +00:00
Sepherosa Ziehau
fa4828b0ab
hyperv/vmbus: Define type for channel messages.
...
And fix message processing; only channel messages are supported.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6706
2016-06-06 06:18:18 +00:00
Sepherosa Ziehau
d8bf51683d
hyperv: Move machine dependent bits into machine dependent files.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6701
2016-06-06 05:55:37 +00:00
Sepherosa Ziehau
b7bb4816a0
hyperv: Rename some cleaned up/almost cleaned up files
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
2016-06-01 09:20:52 +00:00
Sepherosa Ziehau
5d8fdc7fe4
hyperv/channel: Only cpu0 is supported as channel target cpu on WIN7
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
2016-06-01 07:11:54 +00:00
Sepherosa Ziehau
417afb00cb
hyperv/vmbus: Redefine event flags.
...
- Nuke unnecessary union.
- Avoid convoluted macro indirection.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6671
2016-06-01 06:51:44 +00:00
Sepherosa Ziehau
7f9e539e14
hyperv/kvp: Use if_xname.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6641
2016-05-31 06:00:18 +00:00
Sepherosa Ziehau
7df850a759
hyperv: Move guid2str from vmbus file to hyperv file
...
- Use uint8_t for GUID byte array.
- Define GUID string length.
- Break long lines.
- Nuke unnecessary stack variable.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6640
2016-05-31 05:43:59 +00:00
Sepherosa Ziehau
b8ec7cd1e0
hyperv/vmbus: White space cleanup
...
No functional changes
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6637
2016-05-31 05:34:46 +00:00
Sepherosa Ziehau
3ae6d31281
hyperv/vmbus: Redefine SynIC message.
...
- Avoid unnecessary indirection.
- Avoid bit fields.
- Use __packed.
Reviewed by: Jun Su <junsu microsoft com>
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6636
2016-05-31 05:18:55 +00:00
Sepherosa Ziehau
3b2f526463
hyperv/vmbus: Move global vmbus id array to stack.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6603
2016-05-31 05:10:20 +00:00
Sepherosa Ziehau
e4a8553128
hyperv/vmbus: Indentation cleanup
...
No functional changes.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6602
2016-05-31 05:01:43 +00:00
Sepherosa Ziehau
98a68947d4
hyperv/vmbus: Rename ISR functions
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6601
2016-05-31 04:47:53 +00:00
Sepherosa Ziehau
387d355588
hyperv/vmbus: Process event timer before checking events
...
And update comment.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6600
2016-05-31 04:10:15 +00:00
Sepherosa Ziehau
496d023db3
hyperv/et: Allow Hyper-V event timer be disabled
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6599
2016-05-30 09:44:17 +00:00
Sepherosa Ziehau
6072b2511c
hyperv/et: Device renaming; consistent w/ other Hyper-V utils
...
While I'm here, prefix function names w/ vmbus, since unlike Hyper-V
timecounter, Hyper-V event timer will not work w/o vmbus.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6598
2016-05-30 09:35:36 +00:00
Sepherosa Ziehau
3f07976a64
hyperv: Move timer frequency definition to common place.
...
And cleanup event timer period settings.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6597
2016-05-30 09:20:08 +00:00
Sepherosa Ziehau
efe8791a64
hyperv/et: Make sure only one event timer will be registered
...
This nullifies the need to use softc.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6591
2016-05-30 08:50:33 +00:00
Sepherosa Ziehau
430d28dbb3
hyperv/vmbus: Move SINT settings to vmbus_var.h
...
While I'm here remove the event timer's dependency on hv_vmbus_priv.h
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6574
2016-05-30 08:42:35 +00:00
Sepherosa Ziehau
d7bc16443e
hyperv/et: Fix STIMER0 operations.
...
- Make sure that STIMER0 is disabled before writting to it, since
writing to an enabled STIMER will result in undefined behaviour.
- It is unnecessary to reconfigure STIMER0 upon each et_start().
- Make sure that MSR_HV_REF_TIME_COUNT will not return 0, since
writing 0 to STIMER_COUNT will disable the target STIMER.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6573
2016-05-30 08:25:09 +00:00
Sepherosa Ziehau
5cb904dc2f
hyperv: Test features before enabling optional functionalities
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6571
2016-05-27 07:29:31 +00:00
Sepherosa Ziehau
7da9c32e83
hyperv: Clean up Hyper-V timecounter a bit.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6569
2016-05-27 07:05:30 +00:00
Sepherosa Ziehau
62eb6e21b6
hyperv: GC unneeded bits
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6568
2016-05-27 06:55:05 +00:00
Sepherosa Ziehau
e3ebe93016
hyperv/vmbus: Move MSR EOM to hyperv_reg.h
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6567
2016-05-27 06:47:04 +00:00
Sepherosa Ziehau
a4574fd680
hyperv: Move timer related MSRs into hyperv_reg.h
...
And avoid bit fields for event timer.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6566
2016-05-27 06:12:43 +00:00
Sepherosa Ziehau
a8362fc737
hyperv: Move CPUID related bits to hyperv_reg.h and give them clean name
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6565
2016-05-27 05:58:53 +00:00
Sepherosa Ziehau
2b0bce640b
hyperv: Rework guest id settings according to Hyper-V spec
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6553
2016-05-26 03:50:52 +00:00
Sepherosa Ziehau
dade2a02e3
hyperv: Preserve required bits when disable Hypercall
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6530
2016-05-25 06:01:47 +00:00
Sepherosa Ziehau
6d6baea80d
hyperv/vmbus: Rework SynIC setup and teardown
...
- Avoid bit fields.
- Fix SINT setup (preserve required bits).
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6529
2016-05-25 05:53:12 +00:00
Sepherosa Ziehau
c1d5ebc5a4
hyperv/vmbus: Nuke unnecessary MSR read
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6528
2016-05-25 05:45:43 +00:00
Sepherosa Ziehau
8239b2f287
hyperv/vmbus: Pass vmbus softc to vmbus_synic_setup
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6527
2016-05-25 05:37:42 +00:00
Sepherosa Ziehau
c4592280be
hyperv/vmbus: Minor style and white space cleanup
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6523
2016-05-25 05:30:48 +00:00
Sepherosa Ziehau
20bce8fa9f
hyperv/vmbus: Move two global flags into vmbus softc
...
And pack them into one flag field.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6522
2016-05-25 05:22:35 +00:00
Sepherosa Ziehau
14aa3e8097
hyperv/vmbus: Move vcpuid into vmbus softc per-cpu data
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6521
2016-05-25 05:06:15 +00:00
Sepherosa Ziehau
95a45414a0
hyperv/vmbus: Move event/message taskqueue/task to vmbus softc
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6520
2016-05-25 04:59:20 +00:00