• Fei Li's avatar
    KVM: s390: introduce ais mode modify function · 51978393
    Fei Li authored
    Provide an interface for userspace to modify AIS
    (adapter-interruption-suppression) mode state, and add documentation
    for the interface. Allowed target modes are ALL-Interruptions mode
    and SINGLE-Interruption mode.
    
    We introduce the 'simm' and 'nimm' fields in kvm_s390_float_interrupt
    to store interruption modes for each ISC. Each bit in 'simm' and
    'nimm' targets to one ISC, and collaboratively indicate three modes:
    ALL-Interruptions, SINGLE-Interruption and NO-Interruptions. This
    interface can initiate most transitions between the states; transition
    from SINGLE-Interruption to NO-Interruptions via adapter interrupt
    injection will be introduced in a following patch. The meaningful
    combinations are as follows:
    
        interruption mode | simm bit | nimm bit
        ------------------|----------|----------
                 ALL      |    0     |     0
               SINGLE     |    1     |     0
                 NO       |    1     |     1
    
    Besides, add tracepoint to track AIS mode transitions.
    Co-Authored-By: default avatarYi Min Zhao <zyimin@linux.vnet.ibm.com>
    Signed-off-by: default avatarYi Min Zhao <zyimin@linux.vnet.ibm.com>
    Signed-off-by: default avatarFei Li <sherrylf@linux.vnet.ibm.com>
    Reviewed-by: default avatarCornelia Huck <cornelia.huck@de.ibm.com>
    Signed-off-by: default avatarChristian Borntraeger <borntraeger@de.ibm.com>
    51978393
kvm-s390.c 89.9 KB