|
@@ -3008,12 +3008,15 @@ bfad_im_bsg_els_ct_request(struct fc_bsg_job *job)
|
|
* buffer of size bsg_data->payload_len
|
|
* buffer of size bsg_data->payload_len
|
|
*/
|
|
*/
|
|
bsg_fcpt = kzalloc(bsg_data->payload_len, GFP_KERNEL);
|
|
bsg_fcpt = kzalloc(bsg_data->payload_len, GFP_KERNEL);
|
|
- if (!bsg_fcpt)
|
|
|
|
|
|
+ if (!bsg_fcpt) {
|
|
|
|
+ rc = -ENOMEM;
|
|
goto out;
|
|
goto out;
|
|
|
|
+ }
|
|
|
|
|
|
if (copy_from_user((uint8_t *)bsg_fcpt, bsg_data->payload,
|
|
if (copy_from_user((uint8_t *)bsg_fcpt, bsg_data->payload,
|
|
bsg_data->payload_len)) {
|
|
bsg_data->payload_len)) {
|
|
kfree(bsg_fcpt);
|
|
kfree(bsg_fcpt);
|
|
|
|
+ rc = -EIO;
|
|
goto out;
|
|
goto out;
|
|
}
|
|
}
|
|
|
|
|