s390x: pv: Remove sclp boundary checks
The SCLP boundary cross check is done by the Ultravisor for a protected guest, hence we don't need to do it. As QEMU doesn't get a valid SCCB address in protected mode this is even problematic and can lead to QEMU reporting a false boundary cross error. Fixes: db13387ca0 ("s390/sclp: rework sclp boundary checks") Reported-by: Marc Hartmayer <mhartmay@linux.ibm.com> Signed-off-by: Janosch Frank <frankja@linux.ibm.com> Tested-by: Marc Hartmayer <mhartmay@linux.ibm.com> Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com> Reviewed-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Collin Walling <walling@linux.ibm.com> Acked-by: Halil Pasic <pasic@linux.ibm.com> Acked-by: David Hildenbrand <david@redhat.com> Message-Id: <20201022103135.126033-2-frankja@linux.ibm.com> Signed-off-by: Cornelia Huck <cohuck@redhat.com>
This commit is contained in:
parent
db08244a3a
commit
3df4843d0e
@ -285,11 +285,6 @@ int sclp_service_call_protected(CPUS390XState *env, uint64_t sccb,
|
|||||||
goto out_write;
|
goto out_write;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!sccb_verify_boundary(sccb, be16_to_cpu(work_sccb->h.length), code)) {
|
|
||||||
work_sccb->h.response_code = cpu_to_be16(SCLP_RC_SCCB_BOUNDARY_VIOLATION);
|
|
||||||
goto out_write;
|
|
||||||
}
|
|
||||||
|
|
||||||
sclp_c->execute(sclp, work_sccb, code);
|
sclp_c->execute(sclp, work_sccb, code);
|
||||||
out_write:
|
out_write:
|
||||||
s390_cpu_pv_mem_write(env_archcpu(env), 0, work_sccb,
|
s390_cpu_pv_mem_write(env_archcpu(env), 0, work_sccb,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user