History log of /freebsd-11-stable/sys/dev/hyperv/vmbus/vmbus_chanvar.h
Revision Date Author Comments
# 311375 05-Jan-2017 sephe

MFC 309874,309875

309874
hyperv/vmbus: Add channel polling support.

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D8738

309875
hyperv/hn: Add polling support

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D8739


# 311359 05-Jan-2017 sephe

MFC 309030,309039,309080,309081,309083

309030
hyperv/vmbus: Set a mark on the revoked channel.

This will be used to fix device detach DEVMETHOD for revoked primary
channel.

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D8522

309039
hyperv/vmbus: Merge free/active locks.

These functions are only used by management stuffs, so there are
no needs to introduce extra complexity.

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D8524

309080
hyperv/vmbus: Implement orphan support for transaction API

It will be used to fix the primary channel revocation support.

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D8525

309081
hyperv/vmbus: Fix the primary channel revoking on vmbus side.

Drivers can now use vmbus_chan_{is_revoked,set_orphan,unset_orphan}() and
vmbus_xact_ctx_orphan() to fix their attach/detach DEVMETHODs for revoked
primary channels.

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D8545

309083
hyperv/vmbus: Fix the multi-channel revoking on vmbus side.

- Reference count the sub-channel when channel offer message is
processed, so that immediate rescind message on the same channel
will not race sub-channel open on driver side.
- Drop the above reference when sub-channel is closed, this closely
mimics the hypervisor's reaction when primary channel is closed
on the VM side. No drivers use sub-channel after primary channel
is closed.

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D8546


# 307599 18-Oct-2016 sephe

MFC 306360,306387,306389

306360
hyperv/vmbus: Add dynamic device add and remove support

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D8008

306387
hyperv/vmbus: Add functions to test RX/TX bufring emptiness

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D8044

306389
hyperv/vmbus: Add function to drain channel interrupt task.

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D8045


# 307466 16-Oct-2016 sephe

MFC 303421,303422,303470-303473

303421
hyperv/vmbus: Avoid unnecessary mb()

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7333

303422
hyperv/vmbus: Inclusion cleanup

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7334

303470
hyperv/vmbus: Reindent function declarations.

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7344

303471
hyperv/vmbus: Forward declare static functions

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7346

303472
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.

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7347

303473
hyperv/vmbus: Revoke unnecessary exposure of vmbus softc

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7348


# 307464 16-Oct-2016 sephe

MFC 303284,303329,303361,303362,303366,303368-303370

303284
hyperv/vmbus: Move bufring info definition to vmbus_brvar.h

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7282

303329
hyperv/vmbus: Nuke unnecessary accessor functions.

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7303

303361
hyperv/vmbus: Initialize RX/TX bufring mutex at channel creation time

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7312

303362
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.

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7313

303366
hyperv/vmbus: Update comment for bufring

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7314

303368
hyperv/vmbus: Cleanup TX bufring write process.

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7315

303369
hyperv/vmbus: Stringent RX bufring data length checks.

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7316

303370
hyperv/vmbus: Cleanup RX bufring read process.

Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D7317


# 307462 16-Oct-2016 sephe

MFC 303178,303180,303182

303178
hyperv/vmbus: Cosmetic bufring cleanup.

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7267

303180
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.

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7268

303182
hyperv/vmbus: Move vmbus bufring definition to vmbus_reg.h

And add more comment about its fields.

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7269


# 307461 16-Oct-2016 sephe

MFC 303066-303072,303127-303129,303131

303066
hyperv/vmbus: Get rid of unnecessary definition.

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7240

303067
hyperv/vmbus: Move IC register definition to Hyper-V utilities

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7241

303068
hyperv/vmbus: Channel struct field rename

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7242

303069
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.

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7243

303070
hyperv/vmbus: Deprecate the device private data in channel struct

They are neither flexible nor extensible.

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7244

303071
hyperv/vmbus: Hide channel struct definition.

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7245

303072
hyperv/vmbus: Save MNF trigger location instead of MNF trigger index.

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7246

303127
hyperv/vmbus: Save event flag location and evet flag mask.

This avoids unnecessary access to the vmbus_softc struct on sending path.

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7257

303128
hyperv/vmbus: Reorder channel fields.

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7258

303129
hyperv/vmbus: Shuffle function declaration and macro definition.

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7259

303131
hyperv: hv_vmbus_channel -> vmbus_channel

Sponsored by: Microsoft OSTC
Differential Revision: https://reviews.freebsd.org/D7260