| 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 11.0 |