All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] drm: add a check to verify the size alignment
@ 2022-03-23  7:34 ` Arunpravin Paneer Selvam
  0 siblings, 0 replies; 19+ messages in thread
From: Arunpravin Paneer Selvam @ 2022-03-23  7:34 UTC (permalink / raw)
  To: intel-gfx, dri-devel, amd-gfx
  Cc: pmenzel, Arunpravin Paneer Selvam, matthew.auld,
	alexander.deucher, christian.koenig

Add a simple check to reject any size not aligned to the
min_page_size.

handle instances when size is not aligned with the min_page_size.
Unigine Heaven has allocation requests for example required pages
are 257 and alignment request is 256. To allocate the left over 1
page, continues the iteration to find the order value which is 0
and when it compares with min_order = 8, triggers the BUG_ON(order
< min_order). To avoid this problem, we added a simple check to
return -EINVAL if size is not aligned to the min_page_size.

v2: Added more details to the commit description

Signed-off-by: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
Suggested-by: Matthew Auld <matthew.auld@intel.com>
---
 drivers/gpu/drm/drm_buddy.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/drm_buddy.c b/drivers/gpu/drm/drm_buddy.c
index 72f52f293249..b503c88786b0 100644
--- a/drivers/gpu/drm/drm_buddy.c
+++ b/drivers/gpu/drm/drm_buddy.c
@@ -661,6 +661,9 @@ int drm_buddy_alloc_blocks(struct drm_buddy *mm,
 	if (range_overflows(start, size, mm->size))
 		return -EINVAL;
 
+	if (WARN_ON(!IS_ALIGNED(size, min_page_size)))
+		return -EINVAL;
+
 	/* Actual range allocation */
 	if (start + size == end)
 		return __drm_buddy_alloc_range(mm, start, size, blocks);

base-commit: 056d47eaf6ea753fa2e21da31f9cbd8b721bbb7b
-- 
2.25.1


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

end of thread, other threads:[~2022-03-30  9:07 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-23  7:34 [PATCH v2] drm: add a check to verify the size alignment Arunpravin Paneer Selvam
2022-03-23  7:34 ` Arunpravin Paneer Selvam
2022-03-23  7:34 ` [Intel-gfx] " Arunpravin Paneer Selvam
2022-03-23  7:45 ` Christian König
2022-03-23  7:45   ` [Intel-gfx] " Christian König
2022-03-23  7:45   ` Christian König
2022-03-29 11:28   ` Arunpravin Paneer Selvam
2022-03-29 11:28     ` Arunpravin Paneer Selvam
2022-03-29 11:28     ` [Intel-gfx] " Arunpravin Paneer Selvam
2022-03-29 11:24     ` Matthew Auld
2022-03-29 11:24       ` [Intel-gfx] " Matthew Auld
2022-03-30  9:17       ` Arunpravin Paneer Selvam
2022-03-30  9:17         ` [Intel-gfx] " Arunpravin Paneer Selvam
2022-03-29 11:25     ` Christian König
2022-03-29 11:25       ` Christian König
2022-03-29 11:25       ` Christian König
2022-03-23  9:33 ` [Intel-gfx] ✗ Fi.CI.DOCS: warning for drm: add a check to verify the size alignment (rev2) Patchwork
2022-03-23 10:04 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2022-03-23 11:39 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " 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.