Bug 1824458 Comment 2 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

Overview:
* 2023-01-19 (111): bug 1809162 introduced and enforced surface copy: It broke VAAPI on Intel with 'Unsupported modifier, resource creation failed.' (bug 1811878)
* 2023-01-25 (111): bug 1811210 made surface copy a fallback by heuristic which made it unlikely to hit the problem.

* 2022-02-08 (111): bug 1812290 introduced a surface copy check which unbroke VAAPI, but still causes **one 'Unsupported modifier, resource creation failed.' in any case**.
```
MOZ_LOG="Dmabuf:5,PlatformDecoderModule:5" mozregression --repo autoland --launch 5bb5f6bf2fd7 --pref media.ffmpeg.vaapi.enabled:true  -P stdout -a https://bug1619882.bmoattachments.org/attachment.cgi?id=9149605

 0:31.99 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Loading DMABuf system library libgbm.so.1 ...'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABuf is enabled'
 0:32.00 INFO: b'Unsupported modifier, resource creation failed.'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf     Failed to create GbmBufferObject: Permission denied'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 2'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 2'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 2'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf   DMABuf texture copy is broken'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf VideoFrameSurface: creating surface UID 3'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Created new VA-API DMABufSurface UID 3'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Surface pool size 1 used copied 0 used ffmpeg 0 (max 24) free ratio 1.000000'
```

* 2022-02-09 (111): bug 1811878 allowed surface copy (and its test) to fall back to using dmabuf without modifiers which caused the **second 'Unsupported modifier, resource creation failed.' in any case**. Plus if surface copy enabled, the terminal is spammed with this error.
```
MOZ_LOG="Dmabuf:5,PlatformDecoderModule:5" mozregression --repo autoland --launch ff9ad7a4fb13 --pref media.ffmpeg.vaapi.enabled:true  -P stdout -a https://bug1619882.bmoattachments.org/attachment.cgi?id=9149605

 0:42.74 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Loading DMABuf system library libgbm.so.1 ...'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABuf is enabled'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating with modifiers'
 0:42.77 INFO: b'Unsupported modifier, resource creation failed.'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating without modifiers'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 1 plane 0'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 1 plane 0'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 2 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 2 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateYUVPlane() UID 1 size 640 x 360'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating with modifiers'
 0:42.79 INFO: b'Unsupported modifier, resource creation failed.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating without modifiers'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 1 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 1 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 2'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf VideoFrameSurface: creating surface UID 3'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Created new VA-API DMABufSurface UID 3'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Surface pool size 1 used copied 0 used ffmpeg 0 (max 24) free ratio 1.000000'
```

* 2022-03-09 (112): bug 1802844 accidentally enabled surface copy in any case.
* 2022-03-25 (112): bug 1823333 enabled zero copy again for Intel, surface copy is used as fallback by heuristic.
Overview:
* 2023-01-19 (111): bug 1809162 introduced and enforced surface copy: It broke VAAPI on Intel with 'Unsupported modifier, resource creation failed.' (bug 1811878)
* 2023-01-25 (111): bug 1811210 made surface copy a fallback by heuristic which made it unlikely to hit the problem.

* 2022-02-08 (111): bug 1812290 introduced a surface copy check which unbroke VAAPI, but causes **one 'Unsupported modifier, resource creation failed.' in any case**.
```
MOZ_LOG="Dmabuf:5,PlatformDecoderModule:5" mozregression --repo autoland --launch 5bb5f6bf2fd7 --pref media.ffmpeg.vaapi.enabled:true  -P stdout -a https://bug1619882.bmoattachments.org/attachment.cgi?id=9149605

 0:31.99 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Loading DMABuf system library libgbm.so.1 ...'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABuf is enabled'
 0:32.00 INFO: b'Unsupported modifier, resource creation failed.'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf     Failed to create GbmBufferObject: Permission denied'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 2'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 2'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 2'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf   DMABuf texture copy is broken'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf VideoFrameSurface: creating surface UID 3'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Created new VA-API DMABufSurface UID 3'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Surface pool size 1 used copied 0 used ffmpeg 0 (max 24) free ratio 1.000000'
```

* 2022-02-09 (111): bug 1811878 allowed surface copy (and its test) to fall back to using dmabuf without modifiers which caused the **second 'Unsupported modifier, resource creation failed.' in any case**. Plus if surface copy enabled, the terminal is spammed with this error.
```
MOZ_LOG="Dmabuf:5,PlatformDecoderModule:5" mozregression --repo autoland --launch ff9ad7a4fb13 --pref media.ffmpeg.vaapi.enabled:true  -P stdout -a https://bug1619882.bmoattachments.org/attachment.cgi?id=9149605

 0:42.74 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Loading DMABuf system library libgbm.so.1 ...'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABuf is enabled'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating with modifiers'
 0:42.77 INFO: b'Unsupported modifier, resource creation failed.'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating without modifiers'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 1 plane 0'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 1 plane 0'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 2 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 2 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateYUVPlane() UID 1 size 640 x 360'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating with modifiers'
 0:42.79 INFO: b'Unsupported modifier, resource creation failed.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating without modifiers'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 1 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 1 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 2'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf VideoFrameSurface: creating surface UID 3'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Created new VA-API DMABufSurface UID 3'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Surface pool size 1 used copied 0 used ffmpeg 0 (max 24) free ratio 1.000000'
```

* 2022-03-09 (112): bug 1802844 accidentally enabled surface copy in any case.
* 2022-03-25 (112): bug 1823333 enabled zero copy again for Intel, surface copy is used as fallback by heuristic.
Overview:
* 2023-01-19 (111): bug 1809162 introduced and enforced surface copy: It broke VAAPI on Intel with 'Unsupported modifier, resource creation failed.' (bug 1811878)
* 2023-01-25 (111): bug 1811210 made surface copy a fallback by heuristic which made it unlikely to hit the problem.

* 2022-02-08 (111): bug 1812290 introduced a surface copy check which unbroke VAAPI, but causes **one 'Unsupported modifier, resource creation failed.' in any case**.
```
MOZ_LOG="Dmabuf:5,PlatformDecoderModule:5" mozregression --repo autoland --launch 5bb5f6bf2fd7 --pref media.ffmpeg.vaapi.enabled:true  -P stdout -a https://bug1619882.bmoattachments.org/attachment.cgi?id=9149605

 0:31.99 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Loading DMABuf system library libgbm.so.1 ...'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABuf is enabled'
 0:32.00 INFO: b'Unsupported modifier, resource creation failed.'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf     Failed to create GbmBufferObject: Permission denied'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 2'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 2'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 2'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf   DMABuf texture copy is broken'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf VideoFrameSurface: creating surface UID 3'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Created new VA-API DMABufSurface UID 3'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Surface pool size 1 used copied 0 used ffmpeg 0 (max 24) free ratio 1.000000'
```

* 2022-02-09 (111): bug 1811878 allowed surface copy (and its test) to fall back to using dmabuf without modifiers which caused the **second 'Unsupported modifier, resource creation failed.' in any case**. Plus if surface copy enabled, the terminal is spammed with this error.
```
MOZ_LOG="Dmabuf:5,PlatformDecoderModule:5" mozregression --repo autoland --launch ff9ad7a4fb13 --pref media.ffmpeg.vaapi.enabled:true  -P stdout -a https://bug1619882.bmoattachments.org/attachment.cgi?id=9149605

 0:42.74 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Loading DMABuf system library libgbm.so.1 ...'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABuf is enabled'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating with modifiers'
 0:42.77 INFO: b'Unsupported modifier, resource creation failed.'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating without modifiers'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 1 plane 0'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 1 plane 0'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 2 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 2 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateYUVPlane() UID 1 size 640 x 360'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating with modifiers'
 0:42.79 INFO: b'Unsupported modifier, resource creation failed.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating without modifiers'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 1 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 1 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 2'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf VideoFrameSurface: creating surface UID 3'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Created new VA-API DMABufSurface UID 3'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Surface pool size 1 used copied 0 used ffmpeg 0 (max 24) free ratio 1.000000'
```

* 2022-03-09 (112): bug 1802844 accidentally enabled surface copy in any case.
* 2022-03-25 (113): bug 1823333 enabled zero copy again for Intel, surface copy is used as fallback by heuristic.
Overview:
* 2023-01-19 (111): bug 1809162 introduced and enforced surface copy: It broke VAAPI on Intel with 'Unsupported modifier, resource creation failed.' (bug 1811878)
* 2023-01-25 (111): bug 1811210 made surface copy a fallback by heuristic which made it unlikely to hit the problem.

* 2022-02-08 (111): bug 1812290 introduced a surface copy check which unbroke VAAPI, but causes **one 'Unsupported modifier, resource creation failed.' in any case**.
```
MOZ_LOG="Dmabuf:5,PlatformDecoderModule:5" mozregression --repo autoland --launch 5bb5f6bf2fd7 --pref media.ffmpeg.vaapi.enabled:true  -P stdout -a https://bug1619882.bmoattachments.org/attachment.cgi?id=9149605

 0:31.99 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Loading DMABuf system library libgbm.so.1 ...'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABuf is enabled'
 0:32.00 INFO: b'Unsupported modifier, resource creation failed.'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf     Failed to create GbmBufferObject: Permission denied'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 2'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 2'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 2'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf   DMABuf texture copy is broken'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf VideoFrameSurface: creating surface UID 3'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Created new VA-API DMABufSurface UID 3'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Surface pool size 1 used copied 0 used ffmpeg 0 (max 24) free ratio 1.000000'
```

* 2022-02-09 (111): bug 1811878 allowed surface copy (and its test) to fall back to using dmabuf without modifiers which caused the **second 'Unsupported modifier, resource creation failed.' in any case**. Plus if surface copy is enabled, the terminal is spammed with this error.
```
MOZ_LOG="Dmabuf:5,PlatformDecoderModule:5" mozregression --repo autoland --launch ff9ad7a4fb13 --pref media.ffmpeg.vaapi.enabled:true  -P stdout -a https://bug1619882.bmoattachments.org/attachment.cgi?id=9149605

 0:42.74 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Loading DMABuf system library libgbm.so.1 ...'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABuf is enabled'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating with modifiers'
 0:42.77 INFO: b'Unsupported modifier, resource creation failed.'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating without modifiers'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 1 plane 0'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 1 plane 0'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 2 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 2 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateYUVPlane() UID 1 size 640 x 360'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating with modifiers'
 0:42.79 INFO: b'Unsupported modifier, resource creation failed.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating without modifiers'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 1 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 1 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 2'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf VideoFrameSurface: creating surface UID 3'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Created new VA-API DMABufSurface UID 3'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Surface pool size 1 used copied 0 used ffmpeg 0 (max 24) free ratio 1.000000'
```

* 2022-03-09 (112): bug 1802844 accidentally enabled surface copy in any case.
* 2022-03-25 (113): bug 1823333 enabled zero copy again for Intel, surface copy is used as fallback by heuristic.
Overview:
* 2023-01-19 (111): bug 1809162 introduced and enforced surface copy: It broke VAAPI on Intel with 'Unsupported modifier, resource creation failed.' (bug 1811878)
* 2023-01-25 (111): bug 1811210 made surface copy a fallback by heuristic which made it unlikely to hit the problem.

* 2022-02-08 (111): bug 1812290 introduced a surface copy check which unbroke VAAPI, but causes **one 'Unsupported modifier, resource creation failed.' in any case**.
```
MOZ_LOG="Dmabuf:5,PlatformDecoderModule:5" mozregression --repo autoland --launch 5bb5f6bf2fd7 --pref media.ffmpeg.vaapi.enabled:true  -P stdout -a https://bug1619882.bmoattachments.org/attachment.cgi?id=9149605

 0:31.99 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Loading DMABuf system library libgbm.so.1 ...'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABuf is enabled'
 0:32.00 INFO: b'Unsupported modifier, resource creation failed.'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf     Failed to create GbmBufferObject: Permission denied'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 2'
 0:32.00 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 2'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:32.01 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 2'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 1'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf   DMABuf texture copy is broken'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf VideoFrameSurface: creating surface UID 3'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Created new VA-API DMABufSurface UID 3'
 0:32.02 INFO: b'[RDD 47317: MediaPDecoder #2]: D/Dmabuf Surface pool size 1 used copied 0 used ffmpeg 0 (max 24) free ratio 1.000000'
```

* 2022-02-09 (111): bug 1811878 allowed surface copy (and its test) to fall back to using dmabuf without modifiers which caused the **second 'Unsupported modifier, resource creation failed.' in any case**. Plus if surface copy is enabled, the terminal is spammed with this error.
```
MOZ_LOG="Dmabuf:5,PlatformDecoderModule:5" mozregression --repo autoland --launch ff9ad7a4fb13 --pref media.ffmpeg.vaapi.enabled:true  -P stdout -a https://bug1619882.bmoattachments.org/attachment.cgi?id=9149605

 0:42.74 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Loading DMABuf system library libgbm.so.1 ...'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABuf is enabled'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating with modifiers'
 0:42.77 INFO: b'Unsupported modifier, resource creation failed.'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating without modifiers'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 1 plane 0'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 1 plane 0'
 0:42.77 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 2 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 2 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateYUVPlane() UID 1 size 640 x 360'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating with modifiers'
 0:42.79 INFO: b'Unsupported modifier, resource creation failed.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf     Creating without modifiers'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateTexture() UID 1 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::CreateEGLImage() UID 1 plane 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf   Success.'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 2'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:42.79 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseEGLImages() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 2'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseSurface() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurfaceYUV::ReleaseTextures() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf DMABufSurface::ReleaseDMABuf() UID 1'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf VideoFrameSurface: creating surface UID 3'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Created new VA-API DMABufSurface UID 3'
 0:42.80 INFO: b'[RDD 47826: MediaPDecoder #1]: D/Dmabuf Surface pool size 1 used copied 0 used ffmpeg 0 (max 24) free ratio 1.000000'
```

* 2022-03-09 (112): bug 1802844 accidentally enabled surface copy in any case.
* 2022-03-27 (113): bug 1823333 enabled zero copy again for Intel, surface copy is used as fallback by heuristic.

Back to Bug 1824458 Comment 2