diff mbox

saa716x: fix pointer cast to 32bit

Message ID 20090118182126.GA18750@dreamland.darkstar.lan (mailing list archive)
State Not Applicable
Headers show

Commit Message

Luca Tettamanti Jan. 18, 2009, 6:21 p.m. UTC
Pointers may be 64bit long, casting them to u32 is wrong.
For doing math on the address unsigned long is guaranteed to have to correct
size to hold the value of the pointer.

Signed-off-by: Luca Tettamanti <kronos.it@gmail.com>
---
 linux/drivers/media/dvb/saa716x/saa716x_dma.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)


Luca
diff mbox

Patch

Index: b/linux/drivers/media/dvb/saa716x/saa716x_dma.c
===================================================================
--- a/linux/drivers/media/dvb/saa716x/saa716x_dma.c	2009-01-18 19:13:35.126021813 +0100
+++ b/linux/drivers/media/dvb/saa716x/saa716x_dma.c	2009-01-18 19:15:34.074015003 +0100
@@ -34,7 +34,7 @@ 
 		return -ENOMEM;
 	}
 
-	BUG_ON(!(((u32) dmabuf->mem_ptab_phys % SAA716x_PAGE_SIZE) == 0));
+	BUG_ON(!(((unsigned long) dmabuf->mem_ptab_phys % SAA716x_PAGE_SIZE) == 0));
 
 	return 0;
 }
@@ -126,9 +126,9 @@ 
 		}
 
 		/* align memory to page */
-		dmabuf->mem_virt = (void *) PAGE_ALIGN (((u32) dmabuf->mem_virt_noalign));
+		dmabuf->mem_virt = (void *) PAGE_ALIGN (((unsigned long) dmabuf->mem_virt_noalign));
 
-		BUG_ON(!((((u32) dmabuf->mem_virt) % SAA716x_PAGE_SIZE) == 0));
+		BUG_ON(!((((unsigned long) dmabuf->mem_virt) % SAA716x_PAGE_SIZE) == 0));
 	} else {
 		dmabuf->mem_virt = buf;
 	}