• Cornelia Huck's avatar
    vfio: ccw: only free cp on final interrupt · 50b7f1b7
    Cornelia Huck authored
    When we get an interrupt for a channel program, it is not
    necessarily the final interrupt; for example, the issuing
    guest may request an intermediate interrupt by specifying
    the program-controlled-interrupt flag on a ccw.
    
    We must not switch the state to idle if the interrupt is not
    yet final; even more importantly, we must not free the translated
    channel program if the interrupt is not yet final, or the host
    can crash during cp rewind.
    
    Fixes: e5f84dba ("vfio: ccw: return I/O results asynchronously")
    Cc: stable@vger.kernel.org # v4.12+
    Reviewed-by: default avatarEric Farman <farman@linux.ibm.com>
    Signed-off-by: default avatarCornelia Huck <cohuck@redhat.com>
    50b7f1b7
vfio_ccw_drv.c 6.36 KB