IMPORTANT DEBUGGING NOTE: batches of tests are run inside their own process. For debugging a test inside a debugger, use the --gtest_filter= flag along with --single-process-tests. Using sharding settings from environment. This is shard 0/1 Using 1 parallel jobs. Note: Google Test filter = VaapiDescriptorValidationGapTest.FillVADRMPRIMESurfaceDescriptor_AcceptsInconsistentInput:VaapiDescriptorValidationGapTest.FillVADRMPRIMESurfaceDescriptor_AcceptsOffsetPastEnd [==========] Running 2 tests from 1 test suite. [----------] Global test environment set-up. [----------] 2 tests from VaapiDescriptorValidationGapTest [ RUN ] VaapiDescriptorValidationGapTest.FillVADRMPRIMESurfaceDescriptor_AcceptsInconsistentInput ============================================================ POC: VALIDATION GAP CONFIRMED ============================================================ FillVADRMPRIMESurfaceDescriptor returned: true (BUG: accepted inconsistent input) descriptor.width = 1920 descriptor.height = 1080 descriptor.objects[0].size = 4096 <-- lseek-derived (truth) descriptor.layers[0].pitch[0] = 1920 descriptor.layers[0].offset[1] = 2073600 --------------------------------------------- Y plane requires: 1080 * 1920 = 2073600 bytes Actual buffer is: 4096 bytes Discrepancy: 506x --------------------------------------------- This descriptor would be passed to vaCreateSurfaces() in the GPU process. On real hardware (Intel iHD / Mesa Gallium), the driver would map the 4KB buffer and access 2073600 bytes into it. ============================================================ [ OK ] VaapiDescriptorValidationGapTest.FillVADRMPRIMESurfaceDescriptor_AcceptsInconsistentInput (0 ms) [ RUN ] VaapiDescriptorValidationGapTest.FillVADRMPRIMESurfaceDescriptor_AcceptsOffsetPastEnd [POC] Wild offset accepted: offset[1]=0x40000000 but data_size=4096. Driver would dereference 1GiB past buffer end. [ OK ] VaapiDescriptorValidationGapTest.FillVADRMPRIMESurfaceDescriptor_AcceptsOffsetPastEnd (0 ms) [----------] 2 tests from VaapiDescriptorValidationGapTest (24 ms total) [----------] Global test environment tear-down [==========] 2 tests from 1 test suite ran. (24 ms total) [ PASSED ] 2 tests. [1/2] VaapiDescriptorValidationGapTest.FillVADRMPRIMESurfaceDescriptor_AcceptsInconsistentInput (0 ms) [2/2] VaapiDescriptorValidationGapTest.FillVADRMPRIMESurfaceDescriptor_AcceptsOffsetPastEnd (0 ms) SUCCESS: all tests passed. Tests took 1 seconds.