From: Colin Ian King Date: Tue, 30 Aug 2016 16:36:16 +0000 (+0100) Subject: scsi: bfa: Do not dereference port before it is null checked X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=5f6ac2cee25cb0bf6ec07249a6180cabd46a1913;p=linux-beck.git scsi: bfa: Do not dereference port before it is null checked Port is deferenced before it is null sanity checked, hence we potentially have a null pointer dereference bug. Instead, initialise trl_enabled from port->fcs->bfa after we are sure port is not null. Signed-off-by: Colin Ian King Reviewed-by: Johannes Thumshirn Signed-off-by: Martin K. Petersen --- diff --git a/drivers/scsi/bfa/bfa_fcs_lport.c b/drivers/scsi/bfa/bfa_fcs_lport.c index 7733ad5305d4..4ddda72f60e6 100644 --- a/drivers/scsi/bfa/bfa_fcs_lport.c +++ b/drivers/scsi/bfa/bfa_fcs_lport.c @@ -5827,13 +5827,13 @@ bfa_fcs_lport_get_rport_max_speed(bfa_fcs_lport_t *port) bfa_port_speed_t max_speed = 0; struct bfa_port_attr_s port_attr; bfa_port_speed_t port_speed, rport_speed; - bfa_boolean_t trl_enabled = bfa_fcport_is_ratelim(port->fcs->bfa); - + bfa_boolean_t trl_enabled; if (port == NULL) return 0; fcs = port->fcs; + trl_enabled = bfa_fcport_is_ratelim(port->fcs->bfa); /* Get Physical port's current speed */ bfa_fcport_get_attr(port->fcs->bfa, &port_attr);