All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm: remove min_order BUG_ON check
@ 2022-03-07 14:37 ` Arunpravin
  0 siblings, 0 replies; 32+ messages in thread
From: Arunpravin @ 2022-03-07 14:37 UTC (permalink / raw)
  To: amd-gfx, dri-devel, intel-gfx
  Cc: alexander.deucher, Arunpravin, christian.koenig, matthew.auld

place BUG_ON(order < min_order) outside do..while
loop as it fails Unigine Heaven benchmark.

Unigine Heaven has buffer allocation requests for
example required pages are 161 and alignment request
is 128. To allocate the remaining 33 pages, continues
the iteration to find the order value which is 5 and
when it compares with min_order = 7, enables the
BUG_ON(). To avoid this problem, placed the BUG_ON
check outside of do..while loop.

Signed-off-by: Arunpravin <Arunpravin.PaneerSelvam@amd.com>
---
 drivers/gpu/drm/drm_buddy.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/drm_buddy.c b/drivers/gpu/drm/drm_buddy.c
index 72f52f293249..ed94c56b720f 100644
--- a/drivers/gpu/drm/drm_buddy.c
+++ b/drivers/gpu/drm/drm_buddy.c
@@ -669,10 +669,11 @@ int drm_buddy_alloc_blocks(struct drm_buddy *mm,
 	order = fls(pages) - 1;
 	min_order = ilog2(min_page_size) - ilog2(mm->chunk_size);
 
+	BUG_ON(order < min_order);
+
 	do {
 		order = min(order, (unsigned int)fls(pages) - 1);
 		BUG_ON(order > mm->max_order);
-		BUG_ON(order < min_order);
 
 		do {
 			if (flags & DRM_BUDDY_RANGE_ALLOCATION)

base-commit: 8025c79350b90e5a8029234d433578f12abbae2b
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2022-03-14 19:27 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-07 14:37 [PATCH] drm: remove min_order BUG_ON check Arunpravin
2022-03-07 14:37 ` Arunpravin
2022-03-07 14:37 ` [Intel-gfx] " Arunpravin
2022-03-07 14:45 ` Jani Nikula
2022-03-08 14:32   ` Arunpravin
2022-03-07 15:04 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
2022-03-07 15:36 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2022-03-07 15:53 ` [PATCH] " Christian König
2022-03-07 15:53   ` Christian König
2022-03-07 15:53   ` [Intel-gfx] " Christian König
2022-03-08 14:27   ` Arunpravin
2022-03-08 14:27     ` Arunpravin
2022-03-08 14:27     ` [Intel-gfx] " Arunpravin
2022-03-07 16:41 ` Matthew Auld
2022-03-07 16:41   ` Matthew Auld
2022-03-07 16:41   ` [Intel-gfx] " Matthew Auld
2022-03-08 13:59   ` Arunpravin
2022-03-08 13:59     ` Arunpravin
2022-03-08 13:59     ` [Intel-gfx] " Arunpravin
2022-03-08 17:01     ` Matthew Auld
2022-03-08 17:01       ` Matthew Auld
2022-03-08 17:01       ` [Intel-gfx] " Matthew Auld
2022-03-10 14:47       ` Arunpravin
2022-03-10 14:47         ` Arunpravin
2022-03-10 14:47         ` [Intel-gfx] " Arunpravin
2022-03-10 15:29         ` Matthew Auld
2022-03-10 15:29           ` Matthew Auld
2022-03-10 15:29           ` [Intel-gfx] " Matthew Auld
2022-03-14 19:38           ` Arunpravin
2022-03-14 19:38             ` Arunpravin
2022-03-14 19:38             ` [Intel-gfx] " Arunpravin
2022-03-07 18:31 ` [Intel-gfx] ✓ Fi.CI.IGT: success for " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.