diff options
author | bo yang <bo.yang@lsi.com> | 2007-11-09 04:28:47 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2008-01-11 19:22:43 -0500 |
commit | b10c36a57552f03582c0ab3ece04f3cce791922d (patch) | |
tree | 6d695d6b4f1026295b481e6cc281bd09133bd1d2 | |
parent | 14faea9f7fe1e8805629b50cf14a65a85fe4a4fd (diff) |
[SCSI] megaraid_sas: use unsigned long for sense_buff ptr
MegaRAID utilities expect sense_buff to be of type unsigned long.
Signed-off-by: Bo Yang <bo.yang@lsi.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
-rw-r--r-- | drivers/scsi/megaraid/megaraid_sas.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/drivers/scsi/megaraid/megaraid_sas.c b/drivers/scsi/megaraid/megaraid_sas.c index 7eefbe0681d6..a58ad61aa36a 100644 --- a/drivers/scsi/megaraid/megaraid_sas.c +++ b/drivers/scsi/megaraid/megaraid_sas.c | |||
@@ -2825,6 +2825,7 @@ megasas_mgmt_fw_ioctl(struct megasas_instance *instance, | |||
2825 | void *sense = NULL; | 2825 | void *sense = NULL; |
2826 | dma_addr_t sense_handle; | 2826 | dma_addr_t sense_handle; |
2827 | u32 *sense_ptr; | 2827 | u32 *sense_ptr; |
2828 | unsigned long *sense_buff; | ||
2828 | 2829 | ||
2829 | memset(kbuff_arr, 0, sizeof(kbuff_arr)); | 2830 | memset(kbuff_arr, 0, sizeof(kbuff_arr)); |
2830 | 2831 | ||
@@ -2929,14 +2930,16 @@ megasas_mgmt_fw_ioctl(struct megasas_instance *instance, | |||
2929 | */ | 2930 | */ |
2930 | if (ioc->sense_len) { | 2931 | if (ioc->sense_len) { |
2931 | /* | 2932 | /* |
2932 | * sense_ptr points to the location that has the user | 2933 | * sense_buff points to the location that has the user |
2933 | * sense buffer address | 2934 | * sense buffer address |
2934 | */ | 2935 | */ |
2935 | sense_ptr = (u32 *) ((unsigned long)ioc->frame.raw + | 2936 | sense_buff = (unsigned long *) ((unsigned long)ioc->frame.raw + |
2936 | ioc->sense_off); | 2937 | ioc->sense_off); |
2937 | 2938 | ||
2938 | if (copy_to_user((void __user *)((unsigned long)(*sense_ptr)), | 2939 | if (copy_to_user((void __user *)(unsigned long)(*sense_buff), |
2939 | sense, ioc->sense_len)) { | 2940 | sense, ioc->sense_len)) { |
2941 | printk(KERN_ERR "megasas: Failed to copy out to user " | ||
2942 | "sense data\n"); | ||
2940 | error = -EFAULT; | 2943 | error = -EFAULT; |
2941 | goto out; | 2944 | goto out; |
2942 | } | 2945 | } |