• David Hildenbrand's avatar
    KVM: s390: forward most SIGP orders to user space · 2444b352
    David Hildenbrand authored
    Most SIGP orders are handled partially in kernel and partially in
    user space. In order to:
    - Get a correct SIGP SET PREFIX handler that informs user space
    - Avoid race conditions between concurrently executed SIGP orders
    - Serialize SIGP orders per VCPU
    
    We need to handle all "slow" SIGP orders in user space. The remaining
    ones to be handled completely in kernel are:
    - SENSE
    - SENSE RUNNING
    - EXTERNAL CALL
    - EMERGENCY SIGNAL
    - CONDITIONAL EMERGENCY SIGNAL
    According to the PoP, they have to be fast. They can be executed
    without conflicting to the actions of other pending/concurrently
    executing orders (e.g. STOP vs. START).
    
    This patch introduces a new capability that will - when enabled -
    forward all but the mentioned SIGP orders to user space. The
    instruction counters in the kernel are still updated.
    Reviewed-by: default avatarCornelia Huck <cornelia.huck@de.ibm.com>
    Signed-off-by: default avatarDavid Hildenbrand <dahi@linux.vnet.ibm.com>
    Signed-off-by: default avatarChristian Borntraeger <borntraeger@de.ibm.com>
    2444b352
kvm-s390.c 48.4 KB