--- a/drivers/mtd/devices/block2mtd.c
+++ b/drivers/mtd/devices/block2mtd.c
@@ -112,7 +112,7 @@ static int _block2mtd_erase(struct block
if (IS_ERR(page))
return PTR_ERR(page);
- max = (u_long*)page_address(page) + PAGE_SIZE;
+ max = (u_long*) ((u8 *) page_address(page) + PAGE_SIZE);
for (p=(u_long*)page_address(page); p<max; p++)
if (*p != -1UL) {
lock_page(page);