Displaying 6 results from an estimated 6 matches for "handle_noop".
2008 Mar 20
1
[RFC/PATCH 06/15] kvm-s390: sie intercept handling
...nding data in struct kvm_run in case
kvm_handle_sie_intercept() returns -ENOTSUPP.
In case of partial execution in kernel with the need of userspace support,
kvm_handle_sie_intercept() may choose to set up struct kvm_run and return
-EREMOTE.
The trivial intercept reasons are handled in this patch:
handle_noop() just does nothing for intercepts that don't require our support
at all
handle_stop() is called when a cpu enters stopped state, and it drops out to
userland after updating our vcpu state
handle_validity() faults in the cpu lowcore if needed, or passes the request
to userland
Acked-by:...
2008 Mar 20
1
[RFC/PATCH 06/15] kvm-s390: sie intercept handling
...nding data in struct kvm_run in case
kvm_handle_sie_intercept() returns -ENOTSUPP.
In case of partial execution in kernel with the need of userspace support,
kvm_handle_sie_intercept() may choose to set up struct kvm_run and return
-EREMOTE.
The trivial intercept reasons are handled in this patch:
handle_noop() just does nothing for intercepts that don't require our support
at all
handle_stop() is called when a cpu enters stopped state, and it drops out to
userland after updating our vcpu state
handle_validity() faults in the cpu lowcore if needed, or passes the request
to userland
Acked-by:...
2008 Mar 20
0
[RFC/PATCH 07/15] kvm-s390: interrupt subsystem, cpu timer, waitpsw
...cpu->arch.sie_block->gcr[reg] |= val;
+ useraddr += 4;
+ if (reg == reg3)
+ break;
+ reg = reg + 1;
+ if (reg > 15)
+ reg = 0;
+ } while (1);
+ return 0;
+}
+
+static intercept_handler_t instruction_handlers[256] = {
+ [0xb7] = handle_lctl,
+ [0xeb] = handle_lctg,
+};
static int handle_noop(struct kvm_vcpu *vcpu)
{
@@ -57,10 +142,48 @@ static int handle_validity(struct kvm_vc
return -ENOTSUPP;
}
+static int handle_instruction(struct kvm_vcpu *vcpu)
+{
+ intercept_handler_t handler =
+ instruction_handlers[vcpu->arch.sie_block->ipa >> 8];
+
+ vcpu->stat.exit_instr...
2008 Mar 20
34
[RFC/PATCH 00/15] kvm on big iron
This patch series introduces a backend for kvm to run on IBM System z
machines that uses the mainframe's sie virtualization capability. This
work runs 64bit guests on z800/z890/z900/z990/z9/z10 class machines with
a 64bit linux host. Userspace will follow once we're done brushing it
over.
The patch queue consists of the following patches, which can be applied
in sequence on top of kvm.git
2008 Mar 20
34
[RFC/PATCH 00/15] kvm on big iron
This patch series introduces a backend for kvm to run on IBM System z
machines that uses the mainframe's sie virtualization capability. This
work runs 64bit guests on z800/z890/z900/z990/z9/z10 class machines with
a 64bit linux host. Userspace will follow once we're done brushing it
over.
The patch queue consists of the following patches, which can be applied
in sequence on top of kvm.git
2008 Mar 20
0
[RFC/PATCH 09/15] kvm-s390: interprocessor communication via sigp
...vm/arch/s390/kvm/intercept.c
@@ -100,6 +100,7 @@ static int handle_lctl(struct kvm_vcpu *
}
static intercept_handler_t instruction_handlers[256] = {
+ [0xae] = kvm_s390_handle_sigp,
[0xb2] = kvm_s390_handle_priv,
[0xb7] = handle_lctl,
[0xeb] = handle_lctg,
@@ -122,10 +123,27 @@ static int handle_noop(struct kvm_vcpu *
static int handle_stop(struct kvm_vcpu *vcpu)
{
+ int rc;
+
vcpu->stat.exit_stop_request++;
- VCPU_EVENT(vcpu, 3, "%s", "cpu stopped");
atomic_clear_mask(CPUSTAT_RUNNING, &vcpu->arch.sie_block->cpuflags);
- return -ENOTSUPP;
+ spin_lock_bh(...