Commit bccd2683 authored by Vijaya Mohan Guvva's avatar Vijaya Mohan Guvva Committed by James Bottomley

[SCSI] bfa: driver compatibility with 32bit libs

Replaced usage of void * with u64 in data structure shared between
brocade user space libraries and the bfa driver to address pointer
size changes across 32-bit vs 64-bit to have the compatibility between
32bit library and 64bit driver and vice versa.
Signed-off-by: default avatarVijaya Mohan Guvva <vmohan@brocade.com>
Signed-off-by: default avatarJames Bottomley <JBottomley@Parallels.com>
parent c679b599
...@@ -3371,7 +3371,8 @@ bfad_im_bsg_els_ct_request(struct fc_bsg_job *job) ...@@ -3371,7 +3371,8 @@ bfad_im_bsg_els_ct_request(struct fc_bsg_job *job)
goto out; goto out;
} }
if (copy_from_user((uint8_t *)bsg_fcpt, bsg_data->payload, if (copy_from_user((uint8_t *)bsg_fcpt,
(void *)(unsigned long)bsg_data->payload,
bsg_data->payload_len)) { bsg_data->payload_len)) {
kfree(bsg_fcpt); kfree(bsg_fcpt);
rc = -EIO; rc = -EIO;
...@@ -3525,8 +3526,8 @@ bfad_im_bsg_els_ct_request(struct fc_bsg_job *job) ...@@ -3525,8 +3526,8 @@ bfad_im_bsg_els_ct_request(struct fc_bsg_job *job)
kfree(rsp_kbuf); kfree(rsp_kbuf);
/* Need a copy to user op */ /* Need a copy to user op */
if (copy_to_user(bsg_data->payload, (void *) bsg_fcpt, if (copy_to_user((void *)(unsigned long)bsg_data->payload,
bsg_data->payload_len)) (void *)bsg_fcpt, bsg_data->payload_len))
rc = -EIO; rc = -EIO;
kfree(bsg_fcpt); kfree(bsg_fcpt);
......
...@@ -819,10 +819,12 @@ struct bfa_bsg_fcpt_s { ...@@ -819,10 +819,12 @@ struct bfa_bsg_fcpt_s {
}; };
#define bfa_bsg_fcpt_t struct bfa_bsg_fcpt_s #define bfa_bsg_fcpt_t struct bfa_bsg_fcpt_s
#pragma pack(1)
struct bfa_bsg_data { struct bfa_bsg_data {
int payload_len; int payload_len;
void *payload; u64 payload;
}; };
#pragma pack()
#define bfad_chk_iocmd_sz(__payload_len, __hdrsz, __bufsz) \ #define bfad_chk_iocmd_sz(__payload_len, __hdrsz, __bufsz) \
(((__payload_len) != ((__hdrsz) + (__bufsz))) ? \ (((__payload_len) != ((__hdrsz) + (__bufsz))) ? \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment