[SCSI] lpfc 8.3.19: Fix critical errors and crashes
Fix critical errors and crashes - Replace LOF_SECURITY with LOG_SECURITY - When calculating diag test memory size, use full size with header. - Return LS_RJT with status=UNSUPPORTED on unrecognized ELS's - Correct NULL pointer dereference when lpfc_create_vport_work_array() returns NULL. - Added code to handle CVL when port is in LPFC_VPORT_FAILED state. - In lpfc_do_scr_ns_plogi, check the nodelist for FDMI_DID and reuse the resource. - Check for generic request 64 and calculate the sgl offset for the request and reply sgls, also calculate the xmit length using only the request bde. Signed-off-by: Alex Iannicelli <alex.iannicelli@emulex.com> Signed-off-by: James Smart <james.smart@emulex.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
此提交包含在:
@@ -2162,7 +2162,7 @@ lpfc_bsg_diag_test(struct fc_bsg_job *job)
|
||||
goto loopback_test_exit;
|
||||
}
|
||||
|
||||
if (size >= BUF_SZ_4K) {
|
||||
if (full_size >= BUF_SZ_4K) {
|
||||
/*
|
||||
* Allocate memory for ioctl data. If buffer is bigger than 64k,
|
||||
* then we allocate 64k and re-use that buffer over and over to
|
||||
@@ -2171,7 +2171,7 @@ lpfc_bsg_diag_test(struct fc_bsg_job *job)
|
||||
* problem with GET_FCPTARGETMAPPING...
|
||||
*/
|
||||
if (size <= (64 * 1024))
|
||||
total_mem = size;
|
||||
total_mem = full_size;
|
||||
else
|
||||
total_mem = 64 * 1024;
|
||||
} else
|
||||
|
新增問題並參考
封鎖使用者