i965: Fix a mistake from porting the URB allocation code to arrays.
Commit 6d416bcd84 (i965: Use arrays in
Gen7+ URB code.) introduced a regression which caused us to fail to
allocate all of our URB space.
- total_wants -= ds_wants;
+ total_wants -= additional;
The new line should have been total_wants -= wants[i].
Fixes a large performance regression in TessMark.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98815
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Matt Turner <mattst88@gmail.com>
This commit is contained in:
@@ -160,7 +160,7 @@ gen_get_urb_config(const struct gen_device_info *devinfo,
|
||||
roundf(wants[i] * (((float) remaining_space) / total_wants));
|
||||
chunks[i] += additional;
|
||||
remaining_space -= additional;
|
||||
total_wants -= additional;
|
||||
total_wants -= wants[i];
|
||||
}
|
||||
|
||||
chunks[MESA_SHADER_GEOMETRY] += remaining_space;
|
||||
|
||||
Reference in New Issue
Block a user