• Zhipeng Gong's avatar
    drm/i915/gvt: Make MI_USER_INTERRUPT nop in cmd parser · 5da795b0
    Zhipeng Gong authored
    GVT-g dispatches request to host i915 and depends on i915 notify
    ring interrupt mechanism to check completion of request.
    For now MI_USER_INTERRUPT in guest requests is passed through
    in GVT-g cmd parser and i915 does not use it, which causes
    unnecessary interrupt handling in i915.
    On the other hand, if several requests from guest are combined into
    one request in and contain MI_USER_INTERRUPT in the middle of
    combined request. GVT-g still has to wait on the whole request to
    complete to inject user interrupts to guest.
    
    This patch makes all the MI_USER_INTERRUPT nop to save some interrupt
    handling.
    
    Here is test result to run glmark2 on guest for 10 seconds:
    host master interrupts number is reduced from 16021 to 11162
    host user interrupts number is reduced from 7936 to 3536
    
    v2:
    - revise commit message. (Kevin)
    Reviewed-by: default avatarKevin Tian <kevin.tian@intel.com>
    Signed-off-by: default avatarZhipeng Gong <zhipeng.gong@intel.com>
    Signed-off-by: default avatarZhenyu Wang <zhenyuw@linux.intel.com>
    5da795b0
cmd_parser.c 85 KB