diff options
author | Andrea Parri (Microsoft) <parri.andrea@gmail.com> | 2020-06-17 18:46:35 +0200 |
---|---|---|
committer | Wei Liu <wei.liu@kernel.org> | 2020-06-19 15:38:10 +0000 |
commit | 5bf74682118b3003c8f9b0b0ec596e473fc6eb82 (patch) | |
tree | 574d61c2599a3b8b5cb4cbc835f1cf96ff2af7c6 /drivers/hv/channel.c | |
parent | b3a9e3b9622ae10064826dccb4f7a52bd88c7407 (diff) |
Drivers: hv: vmbus: Remove the target_vp field from the vmbus_channel struct
The field is read only in __vmbus_open() and it is already stored twice
(after a call to hv_cpu_number_to_vp_number()) in target_cpu_store() and
init_vp_index(); there is no need to "cache" its value in the channel
data structure.
Suggested-by: Michael Kelley <mikelley@microsoft.com>
Signed-off-by: Andrea Parri (Microsoft) <parri.andrea@gmail.com>
Link: https://lore.kernel.org/r/20200617164642.37393-2-parri.andrea@gmail.com
Reviewed-by: Michael Kelley <mikelley@microsoft.com>
Signed-off-by: Wei Liu <wei.liu@kernel.org>
Diffstat (limited to 'drivers/hv/channel.c')
-rw-r--r-- | drivers/hv/channel.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/hv/channel.c b/drivers/hv/channel.c index 90070b337c10..8848d1548b3f 100644 --- a/drivers/hv/channel.c +++ b/drivers/hv/channel.c @@ -18,6 +18,7 @@ #include <linux/uio.h> #include <linux/interrupt.h> #include <asm/page.h> +#include <asm/mshyperv.h> #include "hyperv_vmbus.h" @@ -176,7 +177,7 @@ static int __vmbus_open(struct vmbus_channel *newchannel, open_msg->child_relid = newchannel->offermsg.child_relid; open_msg->ringbuffer_gpadlhandle = newchannel->ringbuffer_gpadlhandle; open_msg->downstream_ringbuffer_pageoffset = newchannel->ringbuffer_send_offset; - open_msg->target_vp = newchannel->target_vp; + open_msg->target_vp = hv_cpu_number_to_vp_number(newchannel->target_cpu); if (userdatalen) memcpy(open_msg->userdata, userdata, userdatalen); |