Bug 107073 - Some miptree maps don't use intel_mipmap_tree::offset
Summary: Some miptree maps don't use intel_mipmap_tree::offset
Status: RESOLVED MOVED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/i965 (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: Intel 3D Bugs Mailing List
QA Contact: Intel 3D Bugs Mailing List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-06-29 21:39 UTC by Nanley Chery
Modified: 2019-09-25 19:12 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nanley Chery 2018-06-29 21:39:00 UTC
Miptree maps for stencil, depth-stencil, and etc-decompressed-workaround miptrees don't use ::offset. This seems wrong.

I think we may run into an issue in the following case:
1. Create a DRI image from a miptree level > 1 via __DRIimageExtensionRec::createImageFromTexture. The level must be in a different tile than the base level. This will set __DRIimage::offset > 0.
2. Create an aformentioned problematic miptree from that image using EGLImageTargetRenderbufferStorage or EGLImageTargetTexture2D (maybe also __DriverAPIRec::MakeCurrent?). These use intel_miptree_create_for_dri_image internally and will set intel_mipmap_tree::offset > 0.
3. Map the miptree for reading. We'll expect data from the level > 1, but we'll instead get data from the base level.

If this is indeed possbile, we need a piglit test to confirm the issue and a Mesa patch to fix it.
Comment 1 GitLab Migration User 2019-09-25 19:12:03 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/mesa/mesa/issues/1735.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.