Displaying 9 results from an estimated 9 matches for "kvmi_control_cmd_response".
2019 Aug 13
1
[RFC PATCH v6 06/92] kvm: introspection: add KVMI_CONTROL_CMD_RESPONSE
...+`enable`) starting with the current command. For example, `enable=0`
> +and `now=1` means that the reply is disabled for this command too,
> +while `enable=0` and `now=0` means that a reply will be send for this
> +command, but not for the next ones (until enabled back with another
> +*KVMI_CONTROL_CMD_RESPONSE*).
> +
> +This command is used by the introspection tool to disable the replies
> +for commands returning an error code only (eg. *KVMI_SET_REGISTERS*)
> +when an error is less likely to happen. For example, the following
> +commands can be used to reply to an event with a single `wr...
2019 Aug 09
0
[RFC PATCH v6 06/92] kvm: introspection: add KVMI_CONTROL_CMD_RESPONSE
...rtual/kvm/kvmi.rst
index 0f296e3c4244..82de474d512b 100644
--- a/Documentation/virtual/kvm/kvmi.rst
+++ b/Documentation/virtual/kvm/kvmi.rst
@@ -252,3 +252,53 @@ Returns the introspection API version.
This command is always allowed and successful (if the introspection is
built in kernel).
+
+2. KVMI_CONTROL_CMD_RESPONSE
+----------------------------
+
+:Architectures: all
+:Versions: >= 1
+:Parameters:
+
+::
+
+ struct kvmi_control_cmd_response {
+ __u8 enable;
+ __u8 now;
+ __u16 padding1;
+ __u32 padding2;
+ };
+
+:Returns:
+
+::
+ struct kvmi_error_code
+
+Enables or disables the command replies. By defa...
2019 Aug 09
0
[RFC PATCH v6 07/92] kvm: introspection: honor the reply option when handling the KVMI_GET_VERSION command
Obviously, the KVMI_GET_VERSION command must not be used when the command
reply is disabled by a previous KVMI_CONTROL_CMD_RESPONSE command.
This commit changes the code path in order to check the reply option
(enabled/disabled) before trying to reply to this command. If the command
reply is disabled it will return an error to the caller. In the end, the
receiving worker will finish and the introspection socket will be closed....
2019 Aug 09
0
[RFC PATCH v6 55/92] kvm: introspection: add KVMI_CONTROL_MSR and KVMI_EVENT_MSR
..._control_msr(struct kvm_vcpu *vcpu,
+ const struct kvmi_control_msr *req);
#endif
diff --git a/virt/kvm/kvmi_msg.c b/virt/kvm/kvmi_msg.c
index d4f5459722bb..8a8951f13f8e 100644
--- a/virt/kvm/kvmi_msg.c
+++ b/virt/kvm/kvmi_msg.c
@@ -26,6 +26,7 @@ static const char *const msg_IDs[] = {
[KVMI_CONTROL_CMD_RESPONSE] = "KVMI_CONTROL_CMD_RESPONSE",
[KVMI_CONTROL_CR] = "KVMI_CONTROL_CR",
[KVMI_CONTROL_EVENTS] = "KVMI_CONTROL_EVENTS",
+ [KVMI_CONTROL_MSR] = "KVMI_CONTROL_MSR",
[KVMI_CONTROL_SPP] = "KVMI_CONTROL_SPP",...
2019 Aug 09
0
[RFC PATCH v6 16/92] kvm: introspection: handle events and event replies
...ct kvmi_event *ev);
+
#endif
diff --git a/virt/kvm/kvmi_msg.c b/virt/kvm/kvmi_msg.c
index 2728e6870d47..536034e1bea7 100644
--- a/virt/kvm/kvmi_msg.c
+++ b/virt/kvm/kvmi_msg.c
@@ -25,6 +25,8 @@ static const char *const msg_IDs[] = {
[KVMI_CHECK_EVENT] = "KVMI_CHECK_EVENT",
[KVMI_CONTROL_CMD_RESPONSE] = "KVMI_CONTROL_CMD_RESPONSE",
[KVMI_CONTROL_VM_EVENTS] = "KVMI_CONTROL_VM_EVENTS",
+ [KVMI_EVENT] = "KVMI_EVENT",
+ [KVMI_EVENT_REPLY] = "KVMI_EVENT_REPLY",
[KVMI_GET_GUEST_INFO] = "KVMI_GET_GUEST_INFO",...
2019 Aug 12
2
[RFC PATCH v6 01/92] kvm: introduce KVMI (VM introspection subsystem)
...N = 19,
> + KVMI_GET_PAGE_ACCESS = 20,
> + KVMI_SET_PAGE_ACCESS = 21,
> + KVMI_GET_MAP_TOKEN = 22,
> + KVMI_GET_MTRR_TYPE = 23,
> + KVMI_CONTROL_SPP = 24,
> + KVMI_GET_PAGE_WRITE_BITMAP = 25,
> + KVMI_SET_PAGE_WRITE_BITMAP = 26,
> + KVMI_CONTROL_CMD_RESPONSE = 27,
Each command should be introduced along with the patch that adds the
associated functionality.
It'd be helpful to incorporate the scope of the command in the name,
e.g. VM vs. vCPU.
Why are VM and vCPU commands smushed together?
> +
> + KVMI_NEXT_AVAILABLE_COMMAND,
Why not KVM...
2019 Aug 09
117
[RFC PATCH v6 00/92] VM introspection
...owsing actions is 50% lower,
at least)
Adalbert Laz?r (25):
kvm: introspection: add basic ioctls (hook/unhook)
kvm: introspection: add permission access ioctls
kvm: introspection: add the read/dispatch message function
kvm: introspection: add KVMI_GET_VERSION
kvm: introspection: add KVMI_CONTROL_CMD_RESPONSE
kvm: introspection: honor the reply option when handling the
KVMI_GET_VERSION command
kvm: introspection: add KVMI_CHECK_COMMAND and KVMI_CHECK_EVENT
kvm: introspection: add KVMI_CONTROL_VM_EVENTS
kvm: introspection: add a jobs list to every introspected vCPU
kvm: introspection: make...
2019 Aug 09
117
[RFC PATCH v6 00/92] VM introspection
...owsing actions is 50% lower,
at least)
Adalbert Laz?r (25):
kvm: introspection: add basic ioctls (hook/unhook)
kvm: introspection: add permission access ioctls
kvm: introspection: add the read/dispatch message function
kvm: introspection: add KVMI_GET_VERSION
kvm: introspection: add KVMI_CONTROL_CMD_RESPONSE
kvm: introspection: honor the reply option when handling the
KVMI_GET_VERSION command
kvm: introspection: add KVMI_CHECK_COMMAND and KVMI_CHECK_EVENT
kvm: introspection: add KVMI_CONTROL_VM_EVENTS
kvm: introspection: add a jobs list to every introspected vCPU
kvm: introspection: make...
2019 Aug 09
0
[RFC PATCH v6 01/92] kvm: introduce KVMI (VM introspection subsystem)
...ICAL = 18,
+ KVMI_INJECT_EXCEPTION = 19,
+ KVMI_GET_PAGE_ACCESS = 20,
+ KVMI_SET_PAGE_ACCESS = 21,
+ KVMI_GET_MAP_TOKEN = 22,
+ KVMI_GET_MTRR_TYPE = 23,
+ KVMI_CONTROL_SPP = 24,
+ KVMI_GET_PAGE_WRITE_BITMAP = 25,
+ KVMI_SET_PAGE_WRITE_BITMAP = 26,
+ KVMI_CONTROL_CMD_RESPONSE = 27,
+
+ KVMI_NEXT_AVAILABLE_COMMAND,
+
+};
+
+enum {
+ KVMI_EVENT_UNHOOK = 0,
+ KVMI_EVENT_CR = 1,
+ KVMI_EVENT_MSR = 2,
+ KVMI_EVENT_XSETBV = 3,
+ KVMI_EVENT_BREAKPOINT = 4,
+ KVMI_EVENT_HYPERCALL = 5,
+ KVMI_EVENT_PF = 6,
+ KVMI_EVENT_TRAP = 7,
+ KVMI_E...