GPU Hardware Privilege Checks for Secure Graphics Workloads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processing systems face challenges in maintaining security against malicious attacks, particularly due to CPU bandwidth consumption and performance degradation caused by software-based security parsing of command buffers, which can lead to excessive power consumption and latency.

Innovation Solution

Offloading a portion of the security processing from software-based parsing in the kernel-mode driver to hardware-based parsing in the Graphics Processing Unit (GPU), where privilege access checks are performed, allowing the GPU to distinguish between legitimate and illegitimate commands and restricting privileged command execution from non-privileged batch buffers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If software-based security parsing is performed in the kernel-mode driver, then security validation of privileged commands is achieved, but CPU bandwidth consumption increases and performance degradation occurs

Engineering Contradiction:
Improvesecurity validationVSAvoidCPU bandwidth
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts the security parsing function from the kernel-mode driver (software) and relocates it to the GPU (hardware). The command buffer is passed to the GPU with a privilege indicator, and the GPU's command parser hardware automatically validates privileged commands against the current privilege level, removing the CPU bandwidth burden while maintaining security.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a privilege indicator as an intermediary mechanism between the kernel-mode driver and the GPU. This indicator is set by the driver to denote whether the command buffer contains privileged commands, enabling the GPU hardware to perform appropriate security validation without requiring continuous CPU intervention.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If software-based security parsing is performed in the kernel-mode driver, then security validation of privileged commands is achieved, but power consumption increases

Engineering Contradiction:
Improvesecurity validationVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent extracts the security parsing function from the kernel-mode driver (software) and relocates it to the GPU (hardware). The command buffer is passed to the GPU with a privilege indicator, and the GPU's command parser hardware automatically validates privileged commands against the current privilege level, removing the CPU bandwidth burden while maintaining security.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The GPU hardware performs security validation autonomously using its own command parser and privilege level registers. The hardware automatically compares the privilege level in the command buffer against the current GPU privilege level and blocks unauthorized privileged commands without requiring CPU participation, thereby eliminating the power consumption associated with CPU-based validation.

Inventive Principle:
Principle #25Self-service

3Reliability

If software-based security parsing is performed in the kernel-mode driver, then security validation of privileged commands is achieved, but latency increases

Engineering Contradiction:
Improvesecurity validationVSAvoidlatency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts the security parsing function from the kernel-mode driver (software) and relocates it to the GPU (hardware). The command buffer is passed to the GPU with a privilege indicator, and the GPU's command parser hardware automatically validates privileged commands against the current privilege level, removing the CPU bandwidth burden while maintaining security.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The kernel-mode driver performs preliminary action by setting the privilege indicator in the command buffer before submission to the GPU. This preliminary tagging enables the GPU hardware to perform rapid validation without requiring complex runtime analysis, reducing latency while maintaining security.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10303902B2Hardware assist for privilege access violation checks
Publication Date: 2019.05.28 INTEL CORP
  • US10303902B2 patent drawing
  • US10303902B2 patent drawing
  • US10303902B2 patent drawing

AI summary

Techniques are disclosed for processing rendering engine workload of a graphics system in a secure fashion, wherein at least some security processing of the workload is offloaded from software-based security parsing to hardware-based security parsing. In some embodiments, commands from a given application are received by a user mode driver (UMD), which is configured to generate a command buffer delineated into privileged and/or non-privileged command sections. The delineated command buffer can then be passed by the UMD to a kernel-mode driver (KMD), which is configured to parse and validate only privileged buffer sections, but to issue all other batch buffers with a privilege indicator set to non-privileged. A graphics processing unit (GPU) can receive the privilege-designated batch buffers from the KMD, and is configured to disallow execution of any privileged command from a non-privileged batch buffer, while any privileged commands from privileged batch buffers are unrestricted by the GPU