Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

va: Add VA_SURFACE_ATTRIB_USAGE_HINT_SCANOUT #820

Closed
wants to merge 1 commit into from

Conversation

vcheah
Copy link

@vcheah vcheah commented Jun 4, 2024

This can be used to tell the driver set scanout surface. XE DMA DRM render case required this.

@XinfengZhang
Copy link
Contributor

  1. please add signoff
  2. when the scanout is set, the surface is displayable ? how about "if not"? ,

This can be used to tell the driver set scanout surface. XE DMA DRM
render case required this.

Signed-off-by: Cheah, Vincent Beng Keat <[email protected]>
@vcheah
Copy link
Author

vcheah commented Jun 7, 2024

  1. please add signoff
  2. when the scanout is set, the surface is displayable ? how about "if not"? ,

The scanout surface only required for XE DMA DRM render case. I have tested this on MTL on XE. https://github.com/vcheah/libraries.media.vpl.tools/tree/scanout

If scanout not set, drmModeAddFB2WithModifiers() will fail (-EINVAL). The kernel message error points to https://elixir.bootlin.com/linux/latest/source/drivers/gpu/drm/xe/display/intel_fb_bo.c#L23

@XinfengZhang
Copy link
Contributor

If scanout not set, drmModeAddFB2WithModifiers() will fail (-EINVAL). The kernel message error points to https://elixir.bootlin.com/linux/latest/source/drivers/gpu/drm/xe/display/intel_fb_bo.c#L23

the problem is: if not set ,will cause issue, then this PR break the compatibility .

@vcheah
Copy link
Author

vcheah commented Jun 7, 2024

If scanout not set, drmModeAddFB2WithModifiers() will fail (-EINVAL). The kernel message error points to https://elixir.bootlin.com/linux/latest/source/drivers/gpu/drm/xe/display/intel_fb_bo.c#L23

the problem is: if not set ,will cause issue, then this PR break the compatibility .

Do you have any other good recommendation in mind? The problem is when the created surfaces and had undergo VM_BIND operation, The list_empty(&bo->ttm.base.gpuva.list) will never be empty, hence, it will always encounters the failing case.

@vcheah
Copy link
Author

vcheah commented Jun 10, 2024

If scanout not set, drmModeAddFB2WithModifiers() will fail (-EINVAL). The kernel message error points to https://elixir.bootlin.com/linux/latest/source/drivers/gpu/drm/xe/display/intel_fb_bo.c#L23

the problem is: if not set ,will cause issue, then this PR break the compatibility.

The flags is actually only required for DRM render case in order for render to work.

For XE native weston10 case, I have checked (MTL/RPL), sometime ago, having the scanout surface set or NOT, the render output is correct. However, weston10 + scanout surface, it seems to suffer some performance degradation based on some early data that I've collected sometime ago (on ADL).

@vcheah
Copy link
Author

vcheah commented Jun 25, 2024

Closing the MR. Track this: intel/media-driver#1822

@vcheah vcheah closed this Jun 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants