[Intel-gfx] [PATCH] igt/kms_addfb_basic: New subtest to check for fb modifier and tiling mode mismatch
Tvrtko Ursulin
tvrtko.ursulin at linux.intel.com
Fri Oct 9 01:34:25 PDT 2015
On 08/10/15 09:55, Tvrtko Ursulin wrote:
> On 07/10/15 22:07, Vivek Kasireddy wrote:
>>
>> Hi Tvrtko,
>>
>> On Wed, 7 Oct 2015 15:07:30 +0100
>> Tvrtko Ursulin <tvrtko.ursulin at linux.intel.com> wrote:
>>
>>>
>>> Hi,
>>>
>>> On 07/10/15 03:35, Vivek Kasireddy wrote:
>>>> This new subtest will validate a Y-tiled object's tiling mode
>>>> against its associated fb modifier.
>>>>
>>>> Cc: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
>>>> Signed-off-by: Vivek Kasireddy <vivek.kasireddy at intel.com>
>>>> ---
>>>> tests/kms_addfb_basic.c | 9 +++++++++
>>>> 1 file changed, 9 insertions(+)
>>>>
>>>> diff --git a/tests/kms_addfb_basic.c b/tests/kms_addfb_basic.c
>>>> index d466e4d..7ca1add 100644
>>>> --- a/tests/kms_addfb_basic.c
>>>> +++ b/tests/kms_addfb_basic.c
>>>> @@ -373,6 +373,15 @@ static void addfb25_ytile(int fd, int gen)
>>>> f.handles[0] = gem_bo;
>>>> }
>>>>
>>>> + igt_subtest("addfb25-Y-tiled-X-modifier-mismatch") {
>>>> + igt_require(gen >= 9);
>>>> + igt_require_fb_modifiers(fd);
>>>> + gem_set_tiling(fd, gem_bo, I915_TILING_Y, 1024*4);
>>>> +
>>>> + f.modifier[0] = LOCAL_I915_FORMAT_MOD_X_TILED;
>>>> + igt_assert(drmIoctl(fd,
>>>> LOCAL_DRM_IOCTL_MODE_ADDFB2, &f) < 0 && errno == EINVAL);
>>>> + }
>>>> +
>>>> igt_subtest("addfb25-Y-tiled") {
>>>> igt_require_fb_modifiers(fd);
>>>>
>>>
>>> Wasn't the original WARN triggered by Y tiled object and Y fb
>>> modifier?
>>
>> Creating a new fb using a Y-tiled object and Y/X fb modifier will not
>> trigger the original WARN. It'll be triggered only if the fb is going
>> to be pinned -- and flipped. I am not sure how to get that WARN to be
>> triggered with the existing suite of igt tests.
>
> Ah yes, you would need to attempt display it, not even necessarily flip
> it. I am sure there are tests which do that. :) I know from recent
> activity kms_rotation_crc for example creates a Y tiled FB and displays
> it. So maybe borrow some code to start with from there.
Even better, kms_flip_tiling does the majority of what is needed here
already. Just drop in a subtest which will do set_tiling and that should
be good.
Regards,
Tvrtko
More information about the Intel-gfx
mailing list