This working patch includes all your suggestions - forward vnc port isn't assign until vm startup and unassigned until vm shutdown - manual port allocation has been remove - 'lock table' invocations added for concurrent port assignment -Mo