[PATCH] scsi: libfc: fix ELS request handling

From: Martin Wilck
Date: Sat Nov 25 2017 - 13:39:18 EST


The modification of fc_lport_recv_els_req() in commit fcabb09e59a7
(merged in 4.12-rc1) caused certain requests not to be handled at all.
Fix that.

Fixes: fcabb09e59a7 "scsi: libfc: directly call ELS request handlers"
Signed-off-by: Martin Wilck <mwilck@xxxxxxxx>
---
drivers/scsi/libfc/fc_lport.c | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/drivers/scsi/libfc/fc_lport.c b/drivers/scsi/libfc/fc_lport.c
index 2fd0ec651170..787e82435241 100644
--- a/drivers/scsi/libfc/fc_lport.c
+++ b/drivers/scsi/libfc/fc_lport.c
@@ -904,10 +904,14 @@ static void fc_lport_recv_els_req(struct fc_lport *lport,
case ELS_FLOGI:
if (!lport->point_to_multipoint)
fc_lport_recv_flogi_req(lport, fp);
+ else
+ fc_rport_recv_req(lport, fp);
break;
case ELS_LOGO:
if (fc_frame_sid(fp) == FC_FID_FLOGI)
fc_lport_recv_logo_req(lport, fp);
+ else
+ fc_rport_recv_req(lport, fp);
break;
case ELS_RSCN:
lport->tt.disc_recv_req(lport, fp);
--
2.15.0