[Nouveau] [PATCH] drm/nouveau: fix WITHIN macro off by one

Pekka Paalanen pq at iki.fi
Fri Sep 18 11:15:27 PDT 2009


Equality in x <= y + z is already out of range. X must be stricly less.

Signed-off-by: Pekka Paalanen <pq at iki.fi>
---
 drivers/gpu/drm/nouveau/nouveau_bios.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/gpu/drm/nouveau/nouveau_bios.c b/drivers/gpu/drm/nouveau/nouveau_bios.c
index 6afd82e..539835a 100644
--- a/drivers/gpu/drm/nouveau/nouveau_bios.c
+++ b/drivers/gpu/drm/nouveau/nouveau_bios.c
@@ -300,7 +300,7 @@ valid_reg(struct nvbios *bios, uint32_t reg)
 	if (dev_priv->card_type >= NV_50)
 		return 1;
 
-	#define WITHIN(x, y, z) ((x >= y) && (x <= y + z))
+	#define WITHIN(x, y, z) ((x >= y) && (x < y + z))
 	if (WITHIN(reg, NV_PMC_OFFSET, NV_PMC_SIZE))
 		return 1;
 	if (WITHIN(reg, NV_PBUS_OFFSET, NV_PBUS_SIZE))
-- 
1.6.3.3



More information about the Nouveau mailing list