diff --git a/drivers/virtio/virtio_magma.c b/drivers/virtio/virtio_magma.c
index d7e28c6..9ca8635 100644
--- a/drivers/virtio/virtio_magma.c
+++ b/drivers/virtio/virtio_magma.c
@@ -543,8 +543,8 @@
 	struct virtmagma_instance *instance = priv->instance;
 	struct virtmagma_connection *connection = NULL;
 	struct virtmagma_connection_object *object = NULL;
-	struct virtio_magma_unmap_ctrl *request = NULL;
-	struct virtio_magma_unmap_resp *response = NULL;
+	struct virtio_magma_internal_unmap_ctrl *request = NULL;
+	struct virtio_magma_internal_unmap_resp *response = NULL;
 	int ret;
 
 	if (instance) {
@@ -569,10 +569,11 @@
 			.response_size = sizeof(*response)
 		};
 
-		request->hdr.type = VIRTIO_MAGMA_CMD_UNMAP;
+		request->hdr.type = VIRTIO_MAGMA_CMD_INTERNAL_UNMAP;
 		request->hdr.flags = 0;
 		request->connection = priv->connection_id;
 		request->buffer = priv->buffer_id;
+		request->address = priv->phys_addr;
 
 		ret = vq_out_send_sync(instance->vi, &command);
 		if (ret == 0) {
@@ -603,8 +604,8 @@
 	struct virtmagma_instance *instance = priv->instance;
 	struct virtmagma_connection *connection;
 	struct virtmagma_connection_object *object;
-	struct virtio_magma_map_ctrl *request;
-	struct virtio_magma_map_resp *response;
+	struct virtio_magma_internal_map_ctrl *request;
+	struct virtio_magma_internal_map_resp *response;
 	unsigned long vm_size = vma->vm_end - vma->vm_start;
 	size_t max_map_size;
 	int ret = 0;
@@ -631,10 +632,11 @@
 		return -ENOMEM;
 	}
 
-	request->hdr.type = VIRTIO_MAGMA_CMD_MAP;
+	request->hdr.type = VIRTIO_MAGMA_CMD_INTERNAL_MAP;
 	request->hdr.flags = 0;
 	request->connection = priv->connection_id;
 	request->buffer = priv->buffer_id;
+	request->length = object->buffer.size_allocated;
 
 	mutex_lock(&priv->mutex_lock);
 	if (!priv->phys_addr) {
@@ -652,7 +654,7 @@
 		}
 
 		if (ret == 0) {
-			priv->phys_addr = response->addr_out;
+			priv->phys_addr = response->address_out;
 		}
 	}
 	mutex_unlock(&priv->mutex_lock);
diff --git a/include/uapi/linux/virtio_magma.h b/include/uapi/linux/virtio_magma.h
index 6178400..2243eef 100644
--- a/include/uapi/linux/virtio_magma.h
+++ b/include/uapi/linux/virtio_magma.h
@@ -79,6 +79,8 @@
 	VIRTIO_MAGMA_CMD_BUFFER_RANGE_OP = 0x1041,
 	VIRTIO_MAGMA_CMD_BUFFER_GET_INFO = 0x1042,
 	VIRTIO_MAGMA_CMD_GET_BUFFER_HANDLE = 0x1043,
+	VIRTIO_MAGMA_CMD_INTERNAL_MAP = 0x1044,
+	VIRTIO_MAGMA_CMD_INTERNAL_UNMAP = 0x1045,
 	/* magma success responses
  */
 	VIRTIO_MAGMA_RESP_RELEASE_CONNECTION = 0x2004,
@@ -139,6 +141,8 @@
 	VIRTIO_MAGMA_RESP_BUFFER_RANGE_OP = 0x2041,
 	VIRTIO_MAGMA_RESP_BUFFER_GET_INFO = 0x2042,
 	VIRTIO_MAGMA_RESP_GET_BUFFER_HANDLE = 0x2043,
+	VIRTIO_MAGMA_RESP_INTERNAL_MAP = 0x2044,
+	VIRTIO_MAGMA_RESP_INTERNAL_UNMAP = 0x2045,
 	/* magma error responses
  */
 	VIRTIO_MAGMA_RESP_ERR_UNIMPLEMENTED = 0x3001,
@@ -267,6 +271,10 @@
 		case VIRTIO_MAGMA_RESP_BUFFER_GET_INFO: return "VIRTIO_MAGMA_RESP_BUFFER_GET_INFO";
 		case VIRTIO_MAGMA_CMD_GET_BUFFER_HANDLE: return "VIRTIO_MAGMA_CMD_GET_BUFFER_HANDLE";
 		case VIRTIO_MAGMA_RESP_GET_BUFFER_HANDLE: return "VIRTIO_MAGMA_RESP_GET_BUFFER_HANDLE";
+		case VIRTIO_MAGMA_CMD_INTERNAL_MAP: return "VIRTIO_MAGMA_CMD_INTERNAL_MAP";
+		case VIRTIO_MAGMA_RESP_INTERNAL_MAP: return "VIRTIO_MAGMA_RESP_INTERNAL_MAP";
+		case VIRTIO_MAGMA_CMD_INTERNAL_UNMAP: return "VIRTIO_MAGMA_CMD_INTERNAL_UNMAP";
+		case VIRTIO_MAGMA_RESP_INTERNAL_UNMAP: return "VIRTIO_MAGMA_RESP_INTERNAL_UNMAP";
 		case VIRTIO_MAGMA_RESP_ERR_UNIMPLEMENTED: return "VIRTIO_MAGMA_RESP_ERR_UNIMPLEMENTED";
 		case VIRTIO_MAGMA_RESP_ERR_INTERNAL: return "VIRTIO_MAGMA_RESP_ERR_INTERNAL";
 		case VIRTIO_MAGMA_RESP_ERR_HOST_DISCONNECTED: return "VIRTIO_MAGMA_RESP_ERR_HOST_DISCONNECTED";
@@ -337,6 +345,8 @@
 		case VIRTIO_MAGMA_CMD_BUFFER_RANGE_OP: return VIRTIO_MAGMA_RESP_BUFFER_RANGE_OP;
 		case VIRTIO_MAGMA_CMD_BUFFER_GET_INFO: return VIRTIO_MAGMA_RESP_BUFFER_GET_INFO;
 		case VIRTIO_MAGMA_CMD_GET_BUFFER_HANDLE: return VIRTIO_MAGMA_RESP_GET_BUFFER_HANDLE;
+		case VIRTIO_MAGMA_CMD_INTERNAL_MAP: return VIRTIO_MAGMA_RESP_INTERNAL_MAP;
+		case VIRTIO_MAGMA_CMD_INTERNAL_UNMAP: return VIRTIO_MAGMA_RESP_INTERNAL_UNMAP;
 		default: return VIRTIO_MAGMA_RESP_ERR_INVALID_COMMAND;
 	}
 }
@@ -1015,5 +1025,30 @@
 	__le64 result_return;
 } __attribute((packed));
 
+struct virtio_magma_internal_map_ctrl {
+	struct virtio_magma_ctrl_hdr hdr;
+	__le64 connection;
+	__le64 buffer;
+	__le64 length;
+} __attribute((packed));
+
+struct virtio_magma_internal_map_resp {
+	struct virtio_magma_ctrl_hdr hdr;
+	__le64 address_out;
+	__le64 result_return;
+} __attribute((packed));
+
+struct virtio_magma_internal_unmap_ctrl {
+	struct virtio_magma_ctrl_hdr hdr;
+	__le64 connection;
+	__le64 buffer;
+	__le64 address;
+} __attribute((packed));
+
+struct virtio_magma_internal_unmap_resp {
+	struct virtio_magma_ctrl_hdr hdr;
+	__le64 result_return;
+} __attribute((packed));
+
 #endif /* _LINUX_VIRTIO_MAGMA_H
  */
