[<prev] [next>] [day] [month] [year] [list]
Date: Sat, 6 Jun 2009 02:12:17 +0000 (UTC)
From: firstlink@...cast.net
To: gregkh@...e.de, judd@...lot.org,
jeff frontz <jeff.frontz@...il.com>
Cc: linux-kernel@...r.kernel.org, kernel-janitors@...r.kernel.org
Subject: rspiusb driver cleanup - fix compiler warning related to casting of
page pointers
Greg,
Here below is an additional patch for silencing compiler warnings for casting page pointers.
checkpatch.pl constrained me to split operations in two lines to stay below 80 char. Tell me if this
is ok to proceed this way.
Regards
Jean-Pierre Sainfeld
>From d2eb0098f12fa5e8fee9807fb1bb1713b52f0dd7 Mon Sep 17 00:00:00 2001
From: Jean-Pierre Sainfeld <firstlink@...cast.net>
Date: Fri, 5 Jun 2009 19:01:02 -0700
Subject: [PATCH] fix compiler warnings related to casting page pointers
Signed-off-by: Jean-Pierre Sainfeld <firstlink@...cast.net>
---
drivers/staging/rspiusb/rspiusb.c | 19 +++++++++++++------
1 files changed, 13 insertions(+), 6 deletions(-)
diff --git a/drivers/staging/rspiusb/rspiusb.c b/drivers/staging/rspiusb/rspiusb.c
index 25d0737..f209b82 100644
--- a/drivers/staging/rspiusb/rspiusb.c
+++ b/drivers/staging/rspiusb/rspiusb.c
@@ -257,6 +257,7 @@ static int pixis_io(struct ioctl_struct *ctrl, struct device_extension *pdx,
static int pixel_data(struct ioctl_struct *ctrl, struct device_extension *pdx)
{
int i;
+ struct page *page;
if (!pdx->gotPixelData)
return 0;
@@ -265,8 +266,10 @@ static int pixel_data(struct ioctl_struct *ctrl, struct device_extension *pdx)
ctrl->numbytes = pdx->bulk_in_size_returned;
pdx->bulk_in_size_returned -= pdx->frameSize;
- for (i = 0; i < pdx->maplist_numPagesMapped[pdx->active_frame]; i++)
- SetPageDirty(pdx->sgl[pdx->active_frame][i].page_link);
+ for (i = 0; i < pdx->maplist_numPagesMapped[pdx->active_frame]; i++) {
+ page = (struct page *)pdx->sgl[pdx->active_frame][i].page_link;
+ SetPageDirty(page);
+ }
pdx->active_frame = ((pdx->active_frame + 1) % pdx->num_frames);
@@ -487,6 +490,7 @@ static int UnMapUserBuffer(struct device_extension *pdx)
int i = 0;
int k = 0;
unsigned int epAddr;
+ struct page *page;
for (k = 0; k < pdx->num_frames; k++) {
dev_dbg(&pdx->udev->dev,
@@ -518,8 +522,10 @@ static int UnMapUserBuffer(struct device_extension *pdx)
usb_buffer_unmap_sg(pdx->udev, epAddr, pdx->sgl[k],
pdx->maplist_numPagesMapped[k]);
- for (i = 0; i < pdx->maplist_numPagesMapped[k]; i++)
- page_cache_release(pdx->sgl[k][i].page_link);
+ for (i = 0; i < pdx->maplist_numPagesMapped[k]; i++) {
+ page = (struct page *)pdx->sgl[k][i].page_link;
+ page_cache_release(page);
+ }
kfree(pdx->sgl[k]);
kfree(pdx->PixelUrb[k]);
kfree(pdx->pendedPixelUrbs[k]);
@@ -690,7 +696,7 @@ static int MapUserBuffer(struct ioctl_struct *io, struct device_extension *pdx)
dev_dbg(&pdx->udev->dev, "can't allocate mem for sgl");
return -ENOMEM;
}
- pdx->sgl[frameInfo][0].page_link = maplist_p[0];
+ pdx->sgl[frameInfo][0].page_link = (unsigned long)maplist_p[0];
pdx->sgl[frameInfo][0].offset = uaddr & ~PAGE_MASK;
if (pdx->maplist_numPagesMapped[frameInfo] > 1) {
pdx->sgl[frameInfo][0].length =
@@ -698,7 +704,8 @@ static int MapUserBuffer(struct ioctl_struct *io, struct device_extension *pdx)
count -= pdx->sgl[frameInfo][0].length;
for (k = 1; k < pdx->maplist_numPagesMapped[frameInfo]; k++) {
pdx->sgl[frameInfo][k].offset = 0;
- pdx->sgl[frameInfo][k].page_link = maplist_p[k];
+ pdx->sgl[frameInfo][k].page_link =
+ (unsigned long)maplist_p[k];
pdx->sgl[frameInfo][k].length =
(count < PAGE_SIZE) ? count : PAGE_SIZE;
count -= PAGE_SIZE; /* example had PAGE_SIZE here */
--
1.6.0.4
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists