[igt-dev] [PATCH i-g-t 2/2] tests/i915_query: split garbage test
Lionel Landwerlin
lionel.g.landwerlin at intel.com
Tue Mar 13 10:37:18 UTC 2018
On 13/03/18 09:50, Chris Wilson wrote:
> Quoting Lionel Landwerlin (2018-03-13 09:17:55)
>> Unfortunately I forgot that some of those tests require rcs topology
>> support which we don't have on Sandybridge. This change split the test
>> in 2 (first part available on all platforms, second part only with rcs
>> topology support).
>>
>> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105475
>> Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
> Aside, why are the flags prefixed with DRM_I915_QUERY and not just
> I915_QUERY matching the rest of the uAPI? In fact, the whole perf abi is
> special. ARGH.
Argh...
Is it too late for to send a fix?
Since it's only one DRM_I915_QUERY_TOPOLOGY_INFO, can we add a new
define properly named an make the wrongly named one a macro to that?
And make sure it doesn't happen in the future? (at least for this define)
Thanks for the review.
>
>> ---
>> tests/i915_query.c | 20 +++++++++++++++-----
>> 1 file changed, 15 insertions(+), 5 deletions(-)
>>
>> diff --git a/tests/i915_query.c b/tests/i915_query.c
>> index 328c54bc..c7de8cbd 100644
>> --- a/tests/i915_query.c
>> +++ b/tests/i915_query.c
>> @@ -69,9 +69,7 @@ static bool has_query_supports(int fd)
>> static void test_query_garbage(int fd)
>> {
>> struct drm_i915_query query;
>> - struct drm_i915_query_item items[2];
>> - struct drm_i915_query_item *items_ptr;
>> - int i, n_items;
>> + struct drm_i915_query_item item;
>>
>> /* Verify that invalid query pointers are rejected. */
>> igt_assert_eq(__i915_query(fd, NULL), -EFAULT);
>> @@ -90,8 +88,15 @@ static void test_query_garbage(int fd)
>> i915_query_items_err(fd, (void *) 0, 1, EFAULT);
>>
>> /* Test the invalid query id = 0. */
>> - memset(items, 0, sizeof(items));
>> - i915_query_items_err(fd, items, 1, EINVAL);
>> + memset(&item, 0, sizeof(item));
>> + i915_query_items_err(fd, &item, 1, EINVAL);
>> +}
>> +
>> +static void test_query_garbage_items(int fd)
>> +{
>> + struct drm_i915_query_item items[2];
>> + struct drm_i915_query_item *items_ptr;
>> + int i, n_items;
>>
>> /*
>> * Query item flags field is currently valid only if equals to 0.
>> @@ -486,6 +491,11 @@ igt_main
>> igt_subtest("query-garbage")
>> test_query_garbage(fd);
>>
>> + igt_subtest("query-garbage-items") {
>> + igt_require(query_topology_supported(fd));
>> + test_query_garbage_items(fd);
>> + }
>> +
>> igt_subtest("query-topology-kernel-writes") {
>> igt_require(query_topology_supported(fd));
>> test_query_topology_kernel_writes(fd);
> Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
> -Chris
>
More information about the igt-dev
mailing list