summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorMartin Bligh <mbligh@google.com>2007-05-24 03:11:46 +0400
committerJames Bottomley <jejb@mulgrave.il.steeleye.com>2007-05-26 20:46:38 +0400
commitde5952e91caf41bd838a787c7b9b6ca2e1292484 (patch)
treeb1551cb27f64df74b16e18c63cfe4f39f7f8db33 /drivers
parentc6a6c81cfdd0f9b95bf215d1b5626f4dbf1aba7d (diff)
downloadlinux-de5952e91caf41bd838a787c7b9b6ca2e1292484.tar.xz
[SCSI] megaraid: fix compiler warnings
The user ioctl mailbox can only support a 32 bit address for the commands structure. This is fine, since the area it's pointing to is allocated with pci_alloc_consistent(), so it should be physically < 4GB. Thus kill the ptr to u32 conversion warnings on 64 bit. Signed-off-by: Martin J. Bligh <mbligh@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Acked-by: "Patro, Sumant" <Sumant.Patro@lsi.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/scsi/megaraid.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/scsi/megaraid.c b/drivers/scsi/megaraid.c
index 3cce75d70263..40ee07dab450 100644
--- a/drivers/scsi/megaraid.c
+++ b/drivers/scsi/megaraid.c
@@ -3571,7 +3571,7 @@ megadev_ioctl(struct inode *inode, struct file *filep, unsigned int cmd,
/*
* The user passthru structure
*/
- upthru = (mega_passthru __user *)MBOX(uioc)->xferaddr;
+ upthru = (mega_passthru __user *)(unsigned long)MBOX(uioc)->xferaddr;
/*
* Copy in the user passthru here.
@@ -3623,7 +3623,7 @@ megadev_ioctl(struct inode *inode, struct file *filep, unsigned int cmd,
/*
* Get the user data
*/
- if( copy_from_user(data, (char __user *)uxferaddr,
+ if( copy_from_user(data, (char __user *)(unsigned long) uxferaddr,
pthru->dataxferlen) ) {
rval = (-EFAULT);
goto freemem_and_return;
@@ -3649,7 +3649,7 @@ megadev_ioctl(struct inode *inode, struct file *filep, unsigned int cmd,
* Is data going up-stream
*/
if( pthru->dataxferlen && (uioc.flags & UIOC_RD) ) {
- if( copy_to_user((char __user *)uxferaddr, data,
+ if( copy_to_user((char __user *)(unsigned long) uxferaddr, data,
pthru->dataxferlen) ) {
rval = (-EFAULT);
}
@@ -3702,7 +3702,7 @@ freemem_and_return:
/*
* Get the user data
*/
- if( copy_from_user(data, (char __user *)uxferaddr,
+ if( copy_from_user(data, (char __user *)(unsigned long) uxferaddr,
uioc.xferlen) ) {
pci_free_consistent(pdev,
@@ -3742,7 +3742,7 @@ freemem_and_return:
* Is data going up-stream
*/
if( uioc.xferlen && (uioc.flags & UIOC_RD) ) {
- if( copy_to_user((char __user *)uxferaddr, data,
+ if( copy_to_user((char __user *)(unsigned long) uxferaddr, data,
uioc.xferlen) ) {
rval = (-EFAULT);