anv: Limit flushing to the range of mapped memory
This commit is contained in:
parent
89ec36f221
commit
31d3486bd2
|
@ -1148,7 +1148,12 @@ clflush_mapped_ranges(struct anv_device *device,
|
|||
for (uint32_t i = 0; i < count; i++) {
|
||||
ANV_FROM_HANDLE(anv_device_memory, mem, ranges[i].memory);
|
||||
void *p = mem->map + (ranges[i].offset & ~CACHELINE_MASK);
|
||||
void *end = mem->map + ranges[i].offset + ranges[i].size;
|
||||
void *end;
|
||||
|
||||
if (ranges[i].offset + ranges[i].size > mem->map_size)
|
||||
end = mem->map + mem->map_size;
|
||||
else
|
||||
end = mem->map + ranges[i].offset + ranges[i].size;
|
||||
|
||||
while (p < end) {
|
||||
__builtin_ia32_clflush(p);
|
||||
|
|
Loading…
Reference in New Issue