summaryrefslogtreecommitdiff
path: root/tests/i915/gem_create.c
diff options
context:
space:
mode:
authorRamalingam C <ramalingam.c@intel.com>2020-01-27 16:34:31 +0530
committerRamalingam C <ramalingam.c@intel.com>2020-02-05 13:55:44 +0530
commit13b4507005bfbc82cb39ab6506ca41f7e158d1b5 (patch)
tree5cb5d47ebc15e6fcf9232def5989193b8448c5d8 /tests/i915/gem_create.c
parent4028bd390b41925f6e26f6f11b31e05054652527 (diff)
tests/i915/gem_create: Modify the page nonaligned tests
Considering that kernel returns the real memory size(page aligned) allocated, "create-invalid-nonaligned" test is not needed anymore. Hence removing them. At "create-valid-nonaligned" test we are asserting the returned mem size from kernel to be minimum page aligned and checking the write into padded memory. Signed-off-by: Ramalingam C <ramalingam.c@intel.com> cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'tests/i915/gem_create.c')
-rw-r--r--tests/i915/gem_create.c30
1 files changed, 3 insertions, 27 deletions
diff --git a/tests/i915/gem_create.c b/tests/i915/gem_create.c
index 8fc128da..0a0c4d58 100644
--- a/tests/i915/gem_create.c
+++ b/tests/i915/gem_create.c
@@ -120,9 +120,8 @@ static void invalid_size_test(int fd)
}
/*
- * Creating an object with non-aligned size and trying to access it with an
- * offset, which is greater than the requested size but smaller than the
- * object's last page boundary. pwrite here must be successful.
+ * Creating an object with non-aligned size request and assert the buffer is
+ * page aligned. And test the write into the padded extra memory.
*/
static void valid_nonaligned_size(int fd)
{
@@ -132,33 +131,13 @@ static void valid_nonaligned_size(int fd)
char buf[PAGE_SIZE];
igt_assert_eq(create_ioctl(fd, &create), 0);
+ igt_assert(create.size >= PAGE_SIZE);
gem_write(fd, create.handle, PAGE_SIZE / 2, buf, PAGE_SIZE / 2);
gem_close(fd, create.handle);
}
-/*
- * Creating an object with non-aligned size and trying to access it with an
- * offset, which is greater than the requested size and larger than the
- * object's last page boundary. pwrite here must fail.
- */
-static void invalid_nonaligned_size(int fd)
-{
- struct drm_i915_gem_create create = {
- .size = PAGE_SIZE / 2,
- };
- char buf[PAGE_SIZE];
-
- igt_assert_eq(create_ioctl(fd, &create), 0);
-
- /* This should fail. Hence cannot use gem_write. */
- igt_assert(__gem_write(fd, create.handle,
- PAGE_SIZE / 2, buf, PAGE_SIZE));
-
- gem_close(fd, create.handle);
-}
-
static uint64_t atomic_compare_swap_u64(_Atomic(uint64_t) *ptr,
uint64_t oldval, uint64_t newval)
{
@@ -307,9 +286,6 @@ igt_main
igt_subtest("create-valid-nonaligned")
valid_nonaligned_size(fd);
- igt_subtest("create-invalid-nonaligned")
- invalid_nonaligned_size(fd);
-
igt_subtest("create-size-update")
size_update(fd);