Re: [PATCH 06/17] mshv: SynIC port and connection hypercalls

From: Vineeth Pillai
Date: Tue Jun 29 2021 - 12:21:31 EST



On 6/29/2021 9:06 AM, Wei Liu wrote:
On Wed, Jun 02, 2021 at 05:20:51PM +0000, Vineeth Pillai wrote:
Hyper-V enables inter-partition communication through the port and
connection constructs. More details about ports and connections in
TLFS chapter 11.

Implement hypercalls related to ports and connections for enabling
inter-partiion communication.

Signed-off-by: Vineeth Pillai <viremana@xxxxxxxxxxxxxxxxxxx>
Vineeth, feel free to squash the following patch.
Thanks Wei, I will have this in the next iteration.

~Vineeth

---8<---
>From afb9ab422895364216acb4261399f6f5154eea17 Mon Sep 17 00:00:00 2001
From: Wei Liu <wei.liu@xxxxxxxxxx>
Date: Tue, 29 Jun 2021 12:58:47 +0000
Subject: [PATCH] fixup! mshv: SynIC port and connection hypercalls

Signed-off-by: Wei Liu <wei.liu@xxxxxxxxxx>
---
drivers/hv/hv_call.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/hv/hv_call.c b/drivers/hv/hv_call.c
index d5cdbe4e93da..30aefcbdda85 100644
--- a/drivers/hv/hv_call.c
+++ b/drivers/hv/hv_call.c
@@ -797,7 +797,7 @@ hv_call_create_port(u64 port_partition_id, union hv_port_id port_id,
if (status != HV_STATUS_INSUFFICIENT_MEMORY) {
pr_err("%s: %s\n",
__func__, hv_status_to_string(status));
- ret = -hv_status_to_errno(status);
+ ret = hv_status_to_errno(status);
break;
}
ret = hv_call_deposit_pages(NUMA_NO_NODE,
@@ -826,7 +826,7 @@ hv_call_delete_port(u64 port_partition_id, union hv_port_id port_id)
if (status != HV_STATUS_SUCCESS) {
pr_err("%s: %s\n", __func__, hv_status_to_string(status));
- return -hv_status_to_errno(status);
+ return hv_status_to_errno(status);
}
return 0;
@@ -866,7 +866,7 @@ hv_call_connect_port(u64 port_partition_id, union hv_port_id port_id,
if (status != HV_STATUS_INSUFFICIENT_MEMORY) {
pr_err("%s: %s\n",
__func__, hv_status_to_string(status));
- ret = -hv_status_to_errno(status);
+ ret = hv_status_to_errno(status);
break;
}
ret = hv_call_deposit_pages(NUMA_NO_NODE,
@@ -896,7 +896,7 @@ hv_call_disconnect_port(u64 connection_partition_id,
if (status != HV_STATUS_SUCCESS) {
pr_err("%s: %s\n", __func__, hv_status_to_string(status));
- return -hv_status_to_errno(status);
+ return hv_status_to_errno(status);
}
return 0;
@@ -918,7 +918,7 @@ hv_call_notify_port_ring_empty(u32 sint_index)
if (status != HV_STATUS_SUCCESS) {
pr_err("%s: %s\n", __func__, hv_status_to_string(status));
- return -hv_status_to_errno(status);
+ return hv_status_to_errno(status);
}
return 0;