From: "K. Y. Srinivasan"
Some miscellaneous fixes.
Dexuan Cui (1):
Drivers: hv: vmbus: Use get/put_cpu() in vmbus_connect()
Vitaly Kuznetsov (1):
tools: hv: fcopy: set 'error' in case an unknown operation was
requested
drivers/hv/connection.c| 8 +---
tools/hv/hv_fcopy_daemon.
From: Dexuan Cui
With CONFIG_DEBUG_PREEMPT=y, I always see this warning:
BUG: using smp_processor_id() in preemptible []
Fix the false warning by using get/put_cpu().
Here vmbus_connect() sends a message to the host and waits for the
host's response. The host will deliver the response m
From: Vitaly Kuznetsov
'error' variable is left uninitialized in case we see an unknown operation.
As we don't immediately return and proceed to pwrite() we need to set it
to something, HV_E_FAIL sounds good enough.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
tools/hv/
From: "K. Y. Srinivasan"
Miscellaneous fixes.
Dexuan Cui (4):
Drivers: hv: vmbus: Fix the descriptions of some function parameters
Drivers: hv: kvp: Fix the indentation of some "break" statements
Drivers: hv: kvp: Fix two "this statement may fall through" warnings
Drivers: hv: vmbus: Use
From: Dexuan Cui
A cpumask structure on the stack can cause a warning with
CONFIG_NR_CPUS=8192 (e.g. Ubuntu 16.04 and 18.04 use this):
drivers/hv//channel_mgmt.c: In function ‘init_vp_index’:
drivers/hv//channel_mgmt.c:702:1: warning: the frame size of 1032 bytes
is larger than 1024 bytes [-Wf
From: Dexuan Cui
No functional change.
Signed-off-by: Dexuan Cui
Cc: K. Y. Srinivasan
Cc: Haiyang Zhang
Cc: Stephen Hemminger
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/hv_kvp.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/hv/hv_kvp.c b/drivers/hv
From: Dexuan Cui
No functional change.
Added descriptions for some parameters.
Fixed some typos.
Removed some out-of-date comments.
Signed-off-by: Dexuan Cui
Cc: Jonathan Corbet
Cc: linux-...@vger.kernel.org
Cc: K. Y. Srinivasan
Cc: Haiyang Zhang
Cc: Stephen Hemminger
Signed-off-by: K. Y.
From: Dexuan Cui
We don't need to call process_ib_ipinfo() if message->kvp_hdr.operation is
KVP_OP_GET_IP_INFO in kvp_send_key(), because here we just need to pass on
the op code from the host to the userspace; when the userspace returns
the info requested by the host, we pass the info on to the
From: "K. Y. Srinivasan"
Miscellaneous fixes.
Dexuan Cui (3):
Drivers: hv: kvp: Fix the recent regression caused by incorrect
clean-up
Drivers: hv: kvp: Use %u to print U32
Tools: hv: kvp: Fix a warning of buffer overflow with gcc 8.0.1
Haiyang Zhang (1):
hv_utils: update name in st
From: Dexuan Cui
In kvp_send_key(), we do need call process_ib_ipinfo() if
message->kvp_hdr.operation is KVP_OP_GET_IP_INFO, because it turns out
the userland hv_kvp_daemon needs the info of operation, adapter_id and
addr_family. With the incorrect fc62c3b1977d, the host can't get the
VM's IP via
From: Haiyang Zhang
The correct module name is hv_utils. This patch corrects
the name in struct hv_driver util_drv.
Signed-off-by: Haiyang Zhang
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/hv_util.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/hv/hv_util.c b/
From: Dexuan Cui
I didn't find a real issue. Let's just make it consistent with the
next "case REG_U64:" where %llu is used.
Signed-off-by: Dexuan Cui
Cc: K. Y. Srinivasan
Cc: Haiyang Zhang
Cc: Stephen Hemminger
Cc:
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/hv_kvp.c | 2 +-
1 file ch
From: Dexuan Cui
The patch fixes:
hv_kvp_daemon.c: In function 'kvp_set_ip_info':
hv_kvp_daemon.c:1305:2: note: 'snprintf' output between 41 and 4136 bytes
into a destination of size 4096
Signed-off-by: Dexuan Cui
Cc: K. Y. Srinivasan
Cc: Haiyang Zhang
Cc: Stephen Hemminger
Cc:
Signed-off-
From: "K. Y. Srinivasan"
Currently we are replicating state in struct hv_context that is unnecessary -
this state can be retrieved from the hypervisor. Furthermore, this is a per-cpu
state that is being maintained as a global state in struct hv_context.
Get rid of this state in struct hv_context.
From: "K. Y. Srinivasan"
Miscellaneous fixes.
V2: Addressed comments from Greg.
Dexuan Cui (3):
Drivers: hv: kvp: Fix the recent regression caused by incorrect
clean-up
Drivers: hv: kvp: Use %u to print U32
Tools: hv: kvp: Fix a warning of buffer overflow with gcc 8.0.1
Haiyang Zhang
From: "K. Y. Srinivasan"
Currently we are replicating state in struct hv_context that is unnecessary -
this state can be retrieved from the hypervisor. Furthermore, this is a per-cpu
state that is being maintained as a global state in struct hv_context.
Get rid of this state in struct hv_context.
From: Haiyang Zhang
The correct module name is hv_utils. This patch corrects
the name in struct hv_driver util_drv.
Signed-off-by: Haiyang Zhang
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/hv_util.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/hv/hv_util.c b/
From: Dexuan Cui
I didn't find a real issue. Let's just make it consistent with the
next "case REG_U64:" where %llu is used.
Signed-off-by: Dexuan Cui
Cc: K. Y. Srinivasan
Cc: Haiyang Zhang
Cc: Stephen Hemminger
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/hv_kvp.c | 2 +-
1 file changed
From: Dexuan Cui
In kvp_send_key(), we do need call process_ib_ipinfo() if
message->kvp_hdr.operation is KVP_OP_GET_IP_INFO, because it turns out
the userland hv_kvp_daemon needs the info of operation, adapter_id and
addr_family. With the incorrect fc62c3b1977d, the host can't get the
VM's IP via
From: Dexuan Cui
The patch fixes:
hv_kvp_daemon.c: In function 'kvp_set_ip_info':
hv_kvp_daemon.c:1305:2: note: 'snprintf' output between 41 and 4136 bytes
into a destination of size 4096
The "(unsigned int)str_len" is to avoid:
hv_kvp_daemon.c:1309:30: warning: comparison of integer expressio
From: "K. Y. Srinivasan"
This series enables Linux guests running on Hyper-V on ARM64
hardware. New ARM64-specific code in arch/arm64/hyperv initializes
Hyper-V, including its synthetic clocks and hypercall mechanism.
Existing architecture independent drivers for Hyper-V's VMbus and
synthetic dev
From: "K. Y. Srinivasan"
This series enables Linux guests running on Hyper-V on ARM64
hardware. New ARM64-specific code in arch/arm64/hyperv initializes
Hyper-V, including its synthetic clocks and hypercall mechanism.
Existing architecture independent drivers for Hyper-V's VMbus and
synthetic dev
From: Michael Kelley
Add hooks to enable/disable a per-CPU IRQ for VMbus. These hooks
are in the architecture independent setup and shutdown paths for
Hyper-V, and are needed by Linux guests on Hyper-V on ARM64. The
x86/x64 implementation is null because VMbus interrupts on x86/x64
don't use an
From: Michael Kelley
hyperv-tlfs.h defines Hyper-V interfaces from the Hyper-V Top Level
Functional Spec (TLFS). The TLFS is distinctly oriented to x86/x64,
and Hyper-V has not separated out the architecture-dependent parts into
x86/x64 vs. ARM64. So hyperv-tlfs.h includes information for ARM64
t
From: Michael Kelley
Add ARM64-specific code to enable Hyper-V. This code includes:
* Detecting Hyper-V and initializing the guest/Hyper-V interface
* Setting up Hyper-V's synthetic clocks
* Making hypercalls using the HVC instruction
* Setting up VMbus and stimer0 interrupts
* Setting up kexec a
From: Michael Kelley
Update drivers/hv/Kconfig so CONFIG_HYPERV can be selected on ARM64,
causing the Hyper-V specific code to be built.
Signed-off-by: Michael Kelley
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/Kconfig | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/d
From: Dexuan Cui
We can concurrently try to open the same sub-channel from 2 paths:
path #1: vmbus_onoffer() -> vmbus_process_offer() -> handle_sc_creation().
path #2: storvsc_probe() -> storvsc_connect_to_vsp() ->
-> storvsc_channel_init() -> handle_multichannel_storage() ->
-
From: Dexuan Cui
Commit d86adf482b84 ("scsi: storvsc: Enable multi-queue support") removed
the usage of the API in Jan 2017, and the API is not used since then.
netvsc and storvsc have their own algorithms to determine the outgoing
channel, so this API is useless.
And the API is potentially uns
From: "K. Y. Srinivasan"
Miscellaneous fixes.
Dexuan Cui (2):
Drivers: hv: vmbus: check the creation_status in
vmbus_establish_gpadl()
Drivers: hv: vmbus: offload the handling of channels to two workqueues
drivers/hv/channel.c | 8 ++
drivers/hv/channel_mgmt.c | 188
From: Dexuan Cui
vmbus_process_offer() mustn't call channel->sc_creation_callback()
directly for sub-channels, because sc_creation_callback() ->
vmbus_open() may never get the host's response to the
OPEN_CHANNEL message (the host may rescind a channel at any time,
e.g. in the case of hot removing
From: Dexuan Cui
This is a longstanding issue: if the vmbus upper-layer drivers try to
consume too many GPADLs, the host may return with an error
0xC044 (STATUS_QUOTA_EXCEEDED), but currently we forget to check
the creation_status, and hence we can pass an invalid GPADL handle
into the OPEN_C
From: "K. Y. Srinivasan"
Miscellaneous fixes.
V2: Dropped the patch: "vmbus: suppress uevents for hv_sock devices" as
this was only to address test trigerred issues.
Dexuan Cui (1):
vmbus: don't acquire the mutex in vmbus_hvsock_device_unregister()
Olaf Hering (1):
Drivers: hv: fcopy: res
From: Stephen Hemminger
This extends existing vmbus related sysfs structure to provide per-channel
state information. This is useful when diagnosing issues with multiple
queues in networking and storage.
The existing sysfs only displayed information about the primary
channel. The one place it re
From: Stephen Hemminger
When investigating performance, it is useful to be able to look at
the number of host and guest events per-channel. This is equivalent
to per-device interrupt statistics.
Signed-off-by: Stephen Hemminger
Signed-off-by: K. Y. Srinivasan
---
Documentation/ABI/stable/sysf
From: Dexuan Cui
Due to commit 54a66265d675 ("Drivers: hv: vmbus: Fix rescind handling"),
we need this patch to resolve the below deadlock:
after we get the mutex in vmbus_hvsock_device_unregister() and call
vmbus_device_unregister() -> device_unregister() -> ... -> device_release()
-> vmbus_dev
From: Olaf Hering
Till recently the expected length of bytes read by the
daemon did depend on the context. It was either hv_start_fcopy or
hv_do_fcopy. The daemon had a buffer size of two pages, which was much
larger than needed.
Now the expected length of bytes read by the
daemon changed slight
From: "K. Y. Srinivasan"
Add additional per-channel sysfs information to help debug performance
issues.
Greg, please apply this patch-set to 4.15-rc1.
Stephen Hemminger (2):
vmbus: add per-channel sysfs info
Drivers: hv: vmbus: Expose per-channel interrupts and events counters
Documentati
From: Stephen Hemminger
This extends existing vmbus related sysfs structure to provide per-channel
state information. This is useful when diagnosing issues with multiple
queues in networking and storage.
The existing sysfs only displayed information about the primary
channel. The one place it re
From: Stephen Hemminger
When investigating performance, it is useful to be able to look at
the number of host and guest events per-channel. This is equivalent
to per-device interrupt statistics.
Signed-off-by: Stephen Hemminger
Signed-off-by: K. Y. Srinivasan
---
Documentation/ABI/stable/sysf
From: "K. Y. Srinivasan"
Miscellaneous fixes. Greg, please apply these to 4.14-final.
Dexuan Cui (1):
vmbus: don't acquire the mutex in vmbus_hvsock_device_unregister()
Olaf Hering (1):
Drivers: hv: fcopy: restore correct transfer length
drivers/hv/channel_mgmt.c | 4
drivers/hv/hv_f
From: Dexuan Cui
Due to commit 54a66265d675 ("Drivers: hv: vmbus: Fix rescind handling"),
we need this patch to resolve the below deadlock:
after we get the mutex in vmbus_hvsock_device_unregister() and call
vmbus_device_unregister() -> device_unregister() -> ... -> device_release()
-> vmbus_dev
From: Olaf Hering
Till recently the expected length of bytes read by the
daemon did depend on the context. It was either hv_start_fcopy or
hv_do_fcopy. The daemon had a buffer size of two pages, which was much
larger than needed.
Now the expected length of bytes read by the
daemon changed slight
From: "K. Y. Srinivasan"
This patch addresses the following bugs in the current rescind handling code:
1. Fixes a race condition where we may be invoking hv_process_channel_removal()
on an already freed channel.
2. Prevents indefinite wait when rescinding sub-channels by correctly setting
the p
From: "K. Y. Srinivasan"
Miscellaneous enhancements and fixes.
K. Y. Srinivasan (1):
Drivers: hv: vmbus: Make pannic reporting to be more useful
Stephen Hemminger (2):
Drivers: hv: vmbus: Expose per-channel interrupts and events counters
vmbus: initialize reserved fields in messages
Doc
From: Stephen Hemminger
When investigating performance, it is useful to be able to look at
the number of host and guest events per-channel. This is equivalent
to per-device interrupt statistics.
Signed-off-by: Stephen Hemminger
Signed-off-by: K. Y. Srinivasan
---
Documentation/ABI/stable/sysf
From: "K. Y. Srinivasan"
Hyper-V allows the guest to report panic and the guest can pass additional
information. All this is logged on the host. Currently Linux is passing back
information that is not particularly useful. Make the following changes:
1. Windows uses crash MSR P0 to report bugchec
From: Stephen Hemminger
Make sure and initialize reserved fields in messages to host,
rather than passing stack junk.
Signed-off-by: Stephen Hemminger
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/hv/channel.c b/drivers/
From: Dexuan Cui
Without the patch, vmbus_hvsock_device_unregister() can destroy the device
prematurely when close() is called, and can cause NULl dereferencing or
potential data loss (the last portion of the data stream may be dropped
prematurely).
Please consider this for 4.14.
Signed-off-by:
From: Dexuan Cui
Without the patch, vmbus_hvsock_device_unregister() can destroy the device
prematurely when close() is called, and can cause NULl dereferencing or
potential data loss (the last portion of the data stream may be dropped
prematurely).
Signed-off-by: Dexuan Cui
Cc: Haiyang Zhang
From: "K. Y. Srinivasan"
Reply-To: k...@microsoft.com
Miscellaneous enhancements.
K. Y. Srinivasan (1):
Drivers: hv: vmbus: Make pannic reporting to be more useful
Stephen Hemminger (1):
Drivers: hv: vmbus: Expose per-channel interrupts and events counters
Documentation/ABI/stable/sysfs-
From: "K. Y. Srinivasan"
Hyper-V allows the guest to report panic and the guest can pass additional
information. All this is logged on the host. Currently Linux is passing back
information that is not particularly useful. Make the following changes:
1. Windows uses crash MSR P0 to report bugchec
From: Stephen Hemminger
When investigating performance, it is useful to be able to look at
the number of host and guest events per-channel. This is equivalent
to per-device interrupt statistics.
Signed-off-by: Stephen Hemminger
Signed-off-by: K. Y. Srinivasan
---
Documentation/ABI/stable/sysf
From: Vitaly Kuznetsov
Add tracepoint to vmbus_on_message() which is called when we start
processing a blocking from work context.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c | 2 ++
drivers/hv/hv_trace.h | 5 +
2 files changed, 7 inse
From: "K. Y. Srinivasan"
Reply-To: k...@microsoft.com
Messages between guest and host are used in Hyper-V as control flow. To
simplify debugging various issues which are often hard to reproduce add
tracepoints to all message senders and handlers. This is not a
performance
critical path and traci
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_GPADL_CREATED handler.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c | 2 ++
drivers/hv/hv_trace.h | 17 +
2 files changed, 19 insertions(+)
diff --git a/drivers/hv/channe
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_OFFERCHANNEL handler.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c | 2 ++
drivers/hv/hv_trace.h | 37 +
2 files changed, 39 insertions(+)
diff --git
From: Vitaly Kuznetsov
Add tracing subsystem to Hyper-V VMBus module and add tracepoint
to vmbus_on_msg_dpc() which is called when we receive a message from host.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/Makefile | 4 +++-
drivers/hv/hv_trace.c
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_GPADL_TEARDOWN sender.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel.c | 2 ++
drivers/hv/hv_trace.h | 18 ++
2 files changed, 20 insertions(+)
diff --git a/drivers/hv/channel.c b/d
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_GPADL_TORNDOWN handler.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c | 2 ++
drivers/hv/hv_trace.h | 8
2 files changed, 10 insertions(+)
diff --git a/drivers/hv/channel_mgmt.c b
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_REQUESTOFFERS sender.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c | 4 +++-
drivers/hv/hv_trace.h | 8
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/drivers/hv/c
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_INITIATE_CONTACT sender.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/connection.c | 3 +++
drivers/hv/hv_trace.h | 26 ++
2 files changed, 29 insertions(+)
diff --git a/drivers/h
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_RESCIND_CHANNELOFFER handler.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c | 2 ++
drivers/hv/hv_trace.h | 8
2 files changed, 10 insertions(+)
diff --git a/drivers/hv/channel_mg
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_GPADL_HEADER/CHANNELMSG_GPADL_BODY sender.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel.c | 6 ++
drivers/hv/hv_trace.h | 42 ++
2 files changed, 48 inse
From: Vitaly Kuznetsov
Added an additional set of trace points for when channel gets notified
or signals host.
Suggested-by: Stephen Hemminger
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel.c| 2 ++
drivers/hv/connection.c | 2 ++
drivers/hv/hv_t
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_RELID_RELEASED sender.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c | 7 +--
drivers/hv/hv_trace.h | 16
2 files changed, 21 insertions(+), 2 deletions(-)
diff --git
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_VERSION_RESPONSE handler.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c | 3 +++
drivers/hv/hv_trace.h | 11 +++
2 files changed, 14 insertions(+)
diff --git a/drivers/hv/channel_
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_TL_CONNECT_REQUEST sender.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel.c | 7 ++-
drivers/hv/hv_trace.h | 20
2 files changed, 26 insertions(+), 1 deletion(-)
diff --git
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_OPENCHANNEL_RESULT handler.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel_mgmt.c | 2 ++
drivers/hv/hv_trace.h | 17 +
2 files changed, 19 insertions(+)
diff --git a/drivers/hv/c
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_CLOSECHANNEL sender.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel.c | 2 ++
drivers/hv/hv_trace.h | 15 +++
2 files changed, 17 insertions(+)
diff --git a/drivers/hv/channel.c b/driver
From: Vitaly Kuznetsov
Add tracepoint to CHANNELMSG_OPENCHANNEL sender.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/channel.c | 2 ++
drivers/hv/hv_trace.h | 27 +++
2 files changed, 29 insertions(+)
diff --git a/drivers/hv/channel
From: Dexuan Cui
Fixes: c2e5df616e1a ("vmbus: add per-channel sysfs info")
Without the patch, a device can't be thoroughly destroyed, because
vmbus_device_register() -> kset_create_and_add() still holds a reference
to the hv_device's device.kobj.
Signed-off-by: Dexuan Cui
Cc: Stephen Hemminger
From: K. Y. Srinivasan
The current rescind processing code will not correctly handle
the case where the host immediately rescinds a channel that has
been offerred. In this case, we could be blocked in the open call and
since the channel is rescinded, the host will not respond and we could
be bloc
From: K. Y. Srinivasan
Miscellaneous fixes.
Dexuan Cui (1):
vmbus: unregister device_obj->channels_kset
K. Y. Srinivasan (1):
Drivers: hv: vmbus: Fix a rescind issue
drivers/hv/channel.c | 10 --
drivers/hv/channel_mgmt.c |7 ---
drivers/hv/vmbus_drv.c|2 ++
From: Michael Kelley
hv_is_hypercall_page_setup() is used to check if Hyper-V is
initialized, but a 'hypercall page' is an x86 implementation detail
that isn't necessarily present on other architectures. Rename to the
architecture independent hv_is_hyperv_initialized() and add check
that x86_hype
From: K. Y. Srinivasan
Miscellaneous cleanup.
Michael Kelley (1):
Drivers: hv: vmbus: Remove x86-isms from arch independent drivers
Stephen Hemminger (1):
vmbus: make hv_get_ringbuffer_availbytes local
arch/x86/hyperv/hv_init.c | 21 ++---
arch/x86/include/asm/mshy
From: Stephen Hemminger
hv_get_ringbuffer_availbytes is only used by the debug info
routine so make it static. Also, add READ_ONCE() to avoid any
possible issues with potentially volatile index values.
Signed-off-by: Stephen Hemminger
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/ring_buffer
From: Paul Meyer
While reading in more than one block (50) of KVP records, the allocation
goes per block, but the reads used the total number of allocated records
(without resetting the pointer/stream). This causes the records buffer to
overrun when the refresh reads more than one block over the
From: Vitaly Kuznetsov
Makefiles usually come with 'install' target included so each distro
doesn't need to implement the procedure from scratch. Add it to tools/hv.
Signed-off-by: Vitaly Kuznetsov
Signed-off-by: K. Y. Srinivasan
---
tools/hv/Makefile | 23 ++-
1 files c
From: "K. Y. Srinivasan"
The IPI hypercalls depend on being able to map the Linux notion of CPU ID
to the hypervisor's notion of the CPU ID. The array hv_vp_index[] provides
this mapping. Code for populating this array depends on the IPI functionality.
Break this circular dependency.
Fixes: 68bb
From: "K. Y. Srinivasan"
The IPI hypercalls depend on being able to map the Linux notion of CPU ID
to the hypervisor's notion of the CPU ID. The array hv_vp_index[] provides
this mapping. Code for populating this array depends on the IPI functionality.
Break this circular dependency.
Fixes: 68bb
From: Sunil Muthuswamy
In the VM mode on Hyper-V, currently, when the kernel panics, an error
code and few register values are populated in an MSR and the Hypervisor
notified. This information is collected on the host. The amount of
information currently collected is found to be limited and not v
From: "K. Y. Srinivasan"
When the mapping betwween the Linux notion of CPU ID
to the hypervisor's notion of CPU ID is not initialized,
we should fall back on the non-enligghtened path for IPI.
A merge error introduced this bug; fix it.
Fixes: 1268ed0c474a ("Merge branch 'x86/urgent' into x86/hyp
From: "K. Y. Srinivasan"
Miscellaneous fixes/enhancements
Stephen Hemminger (1):
Drivers: hv: vmbus: add numa_node to sysfs
Sunil Muthuswamy (3):
Drivers: hv: vmus: Fix the check for return value from kmsg get dump
buffer
Drivers: hv: vmbus: Fix the issue with freeing up hv_ctl_table_
From: Sunil Muthuswamy
The code to support panic control message was checking the return was
checking the return value from kmsg_dump_get_buffer as error value, which
is not what the routine returns. This fixes it.
Fixes: 81b18bce48af ("Drivers: HV: Send one page worth of kmsg dump over
Hyper-V
From: Sunil Muthuswamy
Get rid of ISA specific code from vmus_drv.c which is common code.
Fixes: 81b18bce48af ("Drivers: HV: Send one page worth of kmsg dump over
Hyper-V during panic")
Signed-off-by: Sunil Muthuswamy
Signed-off-by: K. Y. Srinivasan
---
arch/x86/include/asm/mshyperv.h | 3 +
From: Stephen Hemminger
Being able to find the numa_node for a device is useful for userspace
drivers (DPDK) and also for diagnosing performance issues. This makes
vmbus similar to pci.
Signed-off-by: Stephen Hemminger
Signed-off-by: K. Y. Srinivasan
---
Documentation/ABI/stable/sysfs-bus-vm
From: Sunil Muthuswamy
The check to free the Hyper-V control table header was reversed. This
fixes it.
Fixes: 81b18bce48af ("Drivers: HV: Send one page worth of kmsg dump over
Hyper-V during panic")
Signed-off-by: Sunil Muthuswamy
Signed-off-by: K. Y. Srinivasan
---
drivers/hv/vmbus_drv.c |
From: "K. Y. Srinivasan"
Miscellaneous fixes.
Dexuan Cui (1):
Drivers: hv: vmbus: Reset the channel callback in
vmbus_onoffer_rescind()
Michael Kelley (2):
Drivers: hv: vmbus: Remove use of slow_virt_to_phys()
Drivers: hv: vmbus: Cleanup synic memory free path
drivers/hv/channel.c
From: Michael Kelley
clk_evt memory is not being freed when the synic is shutdown
or when there is an allocation error. Add the appropriate
kfree() call, along with a comment to clarify how the memory
gets freed after an allocation error. Make the free path
consistent by removing checks for NUL
From: Michael Kelley
slow_virt_to_phys() is only implemented for arch/x86.
Remove its use in arch independent Hyper-V drivers, and
replace with test for vmalloc() address followed by
appropriate v-to-p function. This follows the typical
pattern of other drivers and avoids the need to implement
sl
From: Dexuan Cui
Before setting channel->rescind in vmbus_rescind_cleanup(), we should make
sure the channel callback won't run any more, otherwise a high-level
driver like pci_hyperv, which may be infinitely waiting for the host VSP's
response and notices the channel has been rescinded, can't sa
From: "K. Y. Srinivasan"
Miscellaneous fixes/enhancements.
K. Y. Srinivasan (1):
Tools: hv: Fix a bug in the key delete code
Michael Kelley (1):
Drivers: hv: vmbus: Fix synic per-cpu context initialization
Stephen Hemminger (3):
vmbus: add driver_override support
uio_hv_generic: increa
From: Stephen Hemminger
Add support for overriding the default driver for a VMBus device
in the same way that it can be done for PCI devices. This patch
adds the /sys/bus/vmbus/devices/.../driver_override file
and the logic for matching.
This is used by driverctl tool to do driver override.
http
From: Stephen Hemminger
DEBUG is leftover from the development phase, remove it.
Signed-off-by: Stephen Hemminger
Signed-off-by: K. Y. Srinivasan
---
drivers/uio/uio_hv_generic.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/uio/uio_hv_generic.c b/drivers/uio/uio_hv_generic.c
ind
From: Stephen Hemminger
When using DPDK there is significant performance boost by using
the largest possible send and receive buffer area.
Unfortunately, with UIO model there is not a good way to configure
this at run time. But it is okay to have a bigger buffer available
even if application onl
From: "K. Y. Srinivasan"
Fix a bug in the key delete code - the num_records range
from 0 to num_records-1.
Signed-off-by: K. Y. Srinivasan
Reported-by: David Binderman
Cc:
---
tools/hv/hv_kvp_daemon.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/hv/hv_kvp_daemon.
From: Michael Kelley
If hv_synic_alloc() errors out, the state of the per-cpu context
for some CPUs is unknown since the zero'ing is done as each
CPU is iterated over. In such case, hv_synic_cleanup() may try to
free memory based on uninitialized values. Fix this by zero'ing
the per-cpu context
From: Stephen Hemminger
For unsupported device types, the vmbus channel ringbuffer is never
initialized, and therefore reading the sysfs files will return garbage
or cause a kernel OOPS.
Fixes: c2e5df616e1a ("vmbus: add per-channel sysfs info")
Signed-off-by: Stephen Hemminger
Signed-off-by: K
From: Dexuan Cui
If the daemon is NOT running at all, when we disable the util device from
Hyper-V Manager (or sometimes the host can rescind a util device and then
re-offer it), we'll hang in util_remove -> hv_kvp_deinit ->
wait_for_completion(&release_event), because this code path doesn't run:
From: Dexuan Cui
Without the patch, I always get a "BUG: spinlock bad magic" warning.
Fixes: 3716a49a81ba ("hv_utils: implement Hyper-V PTP source")
Signed-off-by: Dexuan Cui
Cc: Vitaly Kuznetsov
Cc: "K. Y. Srinivasan"
Cc: Haiyang Zhang
Cc: Stephen Hemminger
Signed-off-by: K. Y. Srinivasan
1 - 100 of 415 matches
Mail list logo