VMT(4) | Device Drivers Manual (x86) | VMT(4) |
vmt
— VMware Tools
driver
vmt0 at cpu0
The vmt
driver is a kernel level
implementation of VMware Tools. VMware Tools are intended to provide better
support for operating systems running inside virtual machines.
vmt
handles shutdown, reboot, resume
requests from the host by sending events using
sysmon_pswitch(9) of
type PSWITCH_TYPE_POWER, PSWITCH_TYPE_RESET, and PSWITCH_TYPE_SLEEP that can
be handled by powerd(8).
vmt
will log notifications that the guest has been
suspended or resumed by the host.
vmt
reports the guest's hostname and first
non-loopback IP address to the host.
The vmt
driver synchronizes the virtual
machine's clock with the host clock in the following situations:
vmt
driver receives no notification of such an event. Setting this tunable to
zero disables clock synchronization.The vmt
driver first appeared in
OpenBSD 4.4 and was then ported to
NetBSD 6.0.
The vmt
driver was written by
David Gwynne
<dlg@openbsd.org>.
vmt
is known to cause a conflict with
vmtoolsd(8) from
open-vm-tools
. vmt
works by
establishing an RPC channel called TCLO between VMware guest and host to
receive controlling messages from the host. The problem is that
vmt
is essentially a subset of
vmtoolsd(8), and they both
use the same RPC channel, but TCLO is never meant to be simultaneously used
by two distinct services in the same VM guest. So when
vmtoolsd(8) is running while
also vmt
is active, they continually fight for the
channel, both get rejected by the confused VM host, and neither one can
establish a stable communication line.
So before launching
vmtoolsd(8) the
vmt
driver should be detached by running:
# drvctl -d vmt0
And after terminating
vmtoolsd(8) the
vmt
driver should be re-attached by running:
# drvctl -r -a cpufeaturebus cpu0
October 6, 2013 | NetBSD 10.99 |