Mainline commit 0fcb70851fbf ("Makefile.extrawarn: turn on
missing-prototypes globally") in 6.8-rc1 enables -Wmissing-prototypes
globally, revealing a lot of unclean code and also some actual problems.
This is also the case in vmmon and vmnet modules.
Most of them are addressed by making functions used only within one file
static. A special case are Vmx86_MapPage() and Vmx86_UnmapPage() which were
defined since Workstation 14.0.0 but they are not actually used anywhere
until 15.0.0 so that dropping them seems to be the best option.
The missing prototype of random_get_entropy_fallback() is handled by
including <linux/timex.h> rather than <asm/timex.h>.
Finally, there are four functions in vmnet module which are actually used
in multiple files but instead of proper declarations, their prototype is
duplicated in vmnet-only/driver.c, risking that the two copies won't match
(which actually happened in one case). The cleanest solution would be
creating separate header files for them (bridge.h, netif.h, userif.h and
vnetUserListener.h) and including them in the respective source file and
driver.c. As the developers already handle similar cases by simply putting
the declarations into vnetInt.h, let us do the same to keep things simple.