.\" $NetBSD: vmt.4,v 1.5 2024/05/09 12:41:08 pho Exp $ .\" $OpenBSD: vmt.4,v 1.4 2010/10/26 05:07:31 jmc Exp $ .\" .\" Copyright (c) 2008 Marco Peereboom .\" Text was heavily borrowed from the IPMI spec V1.5 .\" .\" Permission to use, copy, modify, and distribute this software for any .\" purpose with or without fee is hereby granted, provided that the above .\" copyright notice and this permission notice appear in all copies. .\" .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN .\" ACTION OF CONTRACT, NEGLIGENCE OR TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .Dd October 6, 2013 .Dt VMT 4 x86 .Os .Sh NAME .Nm vmt .Nd VMware Tools driver .Sh SYNOPSIS .Cd "vmt0 at cpu0" .Sh DESCRIPTION The .Nm driver is a kernel level implementation of VMware Tools. VMware Tools are intended to provide better support for operating systems running inside virtual machines. .Pp .Nm handles shutdown, reboot, resume requests from the host by sending events using .Xr sysmon_pswitch 9 of type PSWITCH_TYPE_POWER, PSWITCH_TYPE_RESET, and PSWITCH_TYPE_SLEEP that can be handled by .Xr powerd 8 . .Nm will log notifications that the guest has been suspended or resumed by the host. .\" It also provides access to the host machine's clock as a timedelta sensor. .Pp .Nm reports the guest's hostname and first non-loopback IP address to the host. .Ss Clock synchronization The .Nm driver synchronizes the virtual machine's clock with the host clock in the following situations: .Bl -bullet .It When the virtual machine resumes after having been suspended. .It Periodically with the interval indicated by the .Va machdep.vmt0.clock_sync.period .Xr sysctl 8 variable. This is done so that the virtual machine can keep its clock synchronized when the host is suspended, because in this case the .Nm driver receives no notification of such an event. Setting this tunable to zero disables clock synchronization. .El .Sh SEE ALSO .\" .Xr cpu 4 , .Xr powerd 8 .Sh HISTORY The .Nm driver first appeared in .Ox 4.4 and was then ported to .Nx 6.0 . .Sh AUTHORS The .Nm driver was written by .An David Gwynne Aq Mt dlg@openbsd.org . .Sh BUGS .Nm is known to cause a conflict with .Xr vmtoolsd 8 from .Li open-vm-tools . .Nm works by establishing an RPC channel called TCLO between VMware guest and host to receive controlling messages from the host. The problem is that .Nm is essentially a subset of .Xr 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 .Xr vmtoolsd 8 is running while also .Nm 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. .Pp So before launching .Xr vmtoolsd 8 the .Nm driver should be detached by running: .Bd -literal -offset indent # drvctl -d vmt0 .Ed .Pp And after terminating .Xr vmtoolsd 8 the .Nm driver should be re-attached by running: .Bd -literal -offset indent # drvctl -r -a cpufeaturebus cpu0 .Ed