OSDN Git Service

scsi: libfc: free skb when receiving invalid flogi resp
authorMing Lu <ming.lu@citrix.com>
Thu, 24 Jan 2019 05:25:42 +0000 (13:25 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 23 Mar 2019 07:44:26 +0000 (08:44 +0100)
commit930cc2bd8d5c85cbf5b3e53905dd7037ee5064aa
tree46809d004ae45109cb6831285039d23ab7148f52
parente7e01b2acf94916f190a705c11e0e1d0b3d07c1c
scsi: libfc: free skb when receiving invalid flogi resp

[ Upstream commit 5d8fc4a9f0eec20b6c07895022a6bea3fb6dfb38 ]

The issue to be fixed in this commit is when libfc found it received a
invalid FLOGI response from FC switch, it would return without freeing the
fc frame, which is just the skb data. This would cause memory leak if FC
switch keeps sending invalid FLOGI responses.

This fix is just to make it execute `fc_frame_free(fp)` before returning
from function `fc_lport_flogi_resp`.

Signed-off-by: Ming Lu <ming.lu@citrix.com>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/scsi/libfc/fc_lport.c