• Jon Bloomfield's avatar
    drm/i915/cmdparser: Ignore Length operands during command matching · 926abff2
    Jon Bloomfield authored
    Some of the gen instruction macros (e.g. MI_DISPLAY_FLIP) have the
    length directly encoded in them. Since these are used directly in
    the tables, the Length becomes part of the comparison used for
    matching during parsing. Thus, if the cmd being parsed has a
    different length to that in the table, it is not matched and the
    cmd is accepted via the default variable length path.
    
    Fix by masking out everything except the Opcode in the cmd tables
    
    Cc: Tony Luck <tony.luck@intel.com>
    Cc: Dave Airlie <airlied@redhat.com>
    Cc: Takashi Iwai <tiwai@suse.de>
    Cc: Tyler Hicks <tyhicks@canonical.com>
    Signed-off-by: default avatarJon Bloomfield <jon.bloomfield@intel.com>
    Reviewed-by: default avatarChris Wilson <chris.p.wilson@intel.com>
    926abff2
i915_cmd_parser.c 47.3 KB