igt/gem_exec_alignment: Mark batch buffer as also requiring 48B

If we completely fill the lower 4G of address space with our alignment
objects, then we also need to mark the batch as requiring high-address.
Though the kernel should be reordering in this case...

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
This commit is contained in:
Chris Wilson 2016-02-05 15:33:23 +00:00
parent ffbc59a3ef
commit b081257d74

View File

@ -103,6 +103,8 @@ static void many(int fd)
execobj[i].flags = 1<<3; /* EXEC_OBJECT_SUPPORTS_48B_ADDRESS */ execobj[i].flags = 1<<3; /* EXEC_OBJECT_SUPPORTS_48B_ADDRESS */
} }
execobj[i].handle = gem_create(fd, 4096); execobj[i].handle = gem_create(fd, 4096);
if ((gtt_size-1) >> 32)
execobj[i].flags = 1<<3; /* EXEC_OBJECT_SUPPORTS_48B_ADDRESS */
gem_write(fd, execobj[i].handle, 0, &bbe, sizeof(bbe)); gem_write(fd, execobj[i].handle, 0, &bbe, sizeof(bbe));
memset(&execbuf, 0, sizeof(execbuf)); memset(&execbuf, 0, sizeof(execbuf));