mirror of
				https://github.com/qemu/qemu.git
				synced 2025-10-31 12:07:31 +00:00 
			
		
		
		
	 0d71f7082d
			
		
	
	
		0d71f7082d
		
	
	
	
	
		
			
			Add the VMBus infrastructure -- bus, devices, root bridge, vmbus state machine, vmbus channel interactions, etc. VMBus is a collection of technologies. At its lowest layer, it's a message passing and signaling mechanism, allowing efficient passing of messages to and from guest VMs. A layer higher, it's a mechanism for defining channels of communication, where each channel is tagged with a type (which implies a protocol) and a instance ID. A layer higher than that, it's a bus driver, serving as the basis of device enumeration within a VM, where a channel can optionally be exposed as a paravirtual device. When a server-side (paravirtual back-end) component wishes to offer a channel to a guest VM, it does so by specifying a channel type, a mode, and an instance ID. VMBus then exposes this in the guest. More information about VMBus can be found in the file vmbuskernelmodeclientlibapi.h in Microsoft's WDK. TODO: - split into smaller palatable pieces - more comments - check and handle corner cases Kudos to Evgeny Yakovlev (formerly eyakovlev@virtuozzo.com) and Andrey Smetatin (formerly asmetanin@virtuozzo.com) for research and prototyping. Signed-off-by: Roman Kagan <rkagan@virtuozzo.com> Signed-off-by: Maciej S. Szmigiero <maciej.szmigiero@oracle.com> Signed-off-by: Jon Doron <arilou@gmail.com> Message-Id: <20200424123444.3481728-4-arilou@gmail.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
		
			
				
	
	
		
			14 lines
		
	
	
		
			185 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			14 lines
		
	
	
		
			185 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| config HYPERV
 | |
|     bool
 | |
|     depends on KVM
 | |
| 
 | |
| config HYPERV_TESTDEV
 | |
|     bool
 | |
|     default y if TEST_DEVICES
 | |
|     depends on HYPERV
 | |
| 
 | |
| config VMBUS
 | |
|     bool
 | |
|     default y
 | |
|     depends on HYPERV
 |