Skip to contentSkip to conversation

VMCI: Fix broken context ID retrieval

PATCH New Andy King 1 participant 1 message Jan 22, 2013 1 message not in the archive

Subsystems (2)
lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

Andy King

author
#1 lore raw

PATCH 1/1 VMCI: Fix broken context ID retrieval

I'm an idiot. The context ID can be a really large unsigned number, which means it'll appear negative as an int. So actually the right fix here is just to set it regardless of the returned value (but only for this particular hypercall; normally we would check it).

---
 drivers/misc/vmw_vmci/vmci_guest.c |    5 +----
 1 files changed, 1 insertions(+), 4 deletions(-)
drivers/misc/vmw_vmci/vmci_guest.c +1 -4
index de1a90b..60c0199 100644
@@ -81,16 +81,13 @@ bool vmci_guest_code_active(void)
 u32 vmci_get_vm_context_id(void)
 {
 	if (vm_context_id == VMCI_INVALID_ID) {
-		int result;
 		struct vmci_datagram get_cid_msg;
 		get_cid_msg.dst =
 		    vmci_make_handle(VMCI_HYPERVISOR_CONTEXT_ID,
 				     VMCI_GET_CONTEXT_ID);
 		get_cid_msg.src = VMCI_ANON_SRC_HANDLE;
 		get_cid_msg.payload_size = 0;
-		result = vmci_send_datagram(&get_cid_msg);
-		if (result >= 0)
-			vm_context_id = result;
+		vm_context_id = vmci_send_datagram(&get_cid_msg);
 	}
 	return vm_context_id;
 }
Signature · 1 line
1.7.4.1