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
Sepherosa Ziehau
bd5465a441
hyperv/vmbus: Allocate/setup IDT vector after all ISR resources are ready
...
And release IDT vector before releasing ISR resources on interrupt
teardown path. We still have some work to do on the interrupt tearing
down path.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6519
2016-05-25 03:39:42 +00:00
Sepherosa Ziehau
01ac237df2
hyperv/vmbus: Check hyperv_dmamem_alloc return value
...
Though it is highly unlikely this function would fail w/ BUS_DMA_WAITOK,
we had better to check its return value; better safe then sorry here.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6518
2016-05-25 03:30:56 +00:00
Sepherosa Ziehau
8982969f05
hyperv/vmbus: Free message taskqueue during interrupt teardown
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6506
2016-05-24 07:07:11 +00:00
Sepherosa Ziehau
b28956a456
hyperv/vmbus: Factor out functions for vmbus interrupt set/teardown
...
This paves way for further cleanup and fix.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6505
2016-05-24 06:42:14 +00:00
Sepherosa Ziehau
bcc9e3e995
hyperv/vmbus: Git rid of sc version of pcpu data extraction macro
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6503
2016-05-24 06:10:21 +00:00
Sepherosa Ziehau
0408d8b80a
hyperv/vmbus: Use busdma(9) for messages and event flags
...
And
- Move message and event flags to vmbus_softc per-cpu data.
- Get rid of hv_setup_arg, which serves no purpose now.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6502
2016-05-24 06:01:39 +00:00
Sepherosa Ziehau
fc2d20095c
hyperv/vmbus: Move SynIC setup/teardown from hyperv file to vmbus file
...
Avoid unnecessary exposure.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6501
2016-05-24 05:51:51 +00:00
Sepherosa Ziehau
5c8e70d86c
hyperv/vmbus: Rename local variable and break long lines
...
No functional changes.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6500
2016-05-24 05:43:55 +00:00
Sepherosa Ziehau
d8313c45a6
hyperv/busdma: Take BUS_DMA_ZERO into account
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6499
2016-05-24 05:26:52 +00:00
Sepherosa Ziehau
86931e66f6
hyperv/vmbus: Pass vmbus_softc and curcpu to hv_vmbus_isr()
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6498
2016-05-24 05:18:26 +00:00
Sepherosa Ziehau
a995872175
hyperv/vmbus: Move vmbus interrupt counter into vmbus softc
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6497
2016-05-24 05:06:01 +00:00
Sepherosa Ziehau
fc4d679fd7
hyperv/vmbus: Move IDT vector to vmbus_softc
...
Prepare to get rid of the hv_setup_arg.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6449
2016-05-23 07:32:34 +00:00
Sepherosa Ziehau
e2468dfeff
hyperv/vmbus: Get rid of vmbus_devp
...
While I'm here, nuke useless print in vmbus_attach().
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6447
2016-05-23 07:23:19 +00:00
Sepherosa Ziehau
c4b78721e3
hyperv/vmbus: Declare Synic message and event w/ proper types
...
Avoid ugly casts.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6446
2016-05-23 07:14:04 +00:00
Sepherosa Ziehau
ae39ebd8df
hyperv: Move Hypercall setup to an early place.
...
It does not belong to the vmbus.
While I'm here rework the Hypercall setup, e.g. use busdma(9)
and avoid bit fields.
Discussed with: Jun Su <junsu microsoft com>
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6445
2016-05-23 07:06:53 +00:00
Sepherosa Ziehau
a46b3df617
hyperv/hn: Use hyperv busdma(9) helper.
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6444
2016-05-23 06:52:42 +00:00
Sepherosa Ziehau
7e118515ca
hyperv: Add helpers for busdma(9) operation
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6443
2016-05-23 06:35:11 +00:00
Sepherosa Ziehau
b9f1312664
hyperv: Move guest id setup to early place
...
And
- Rework the guest id composition.
- Nuke useless saved guest_id.
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6430
2016-05-23 05:11:38 +00:00
Sepherosa Ziehau
a2dc39b5e6
hyperv/vmbus: Use consistent device description as other devices
...
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6418
2016-05-18 07:18:11 +00:00
Sepherosa Ziehau
4910efc98e
hyperv/vmbus: Minor function definition style fixup
...
Reviewed by: Jun Su <junsu microsoft com>
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6417
2016-05-18 07:09:44 +00:00
Sepherosa Ziehau
50b2a96140
hyperv/vmbus: Fix SYSINIT function prototype and usage.
...
Reviewed by: Jun Su <junsu microsoft com>
MFC after: 1 week
Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D6416
2016-05-18 07:01:32 +00:00