diff options
author | Justin Tee <[email protected]> | 2023-05-23 11:31:58 -0700 |
---|---|---|
committer | Martin K. Petersen <[email protected]> | 2023-05-31 18:14:19 -0400 |
commit | a4157aaf0fb458c867b76f6cd63cb57fa91da318 (patch) | |
tree | 09894614e6461ce47c2e97a5ec51815ed8e1af43 /rust/helpers/helpers.c | |
parent | fd9ffa6c747f8868640dff783bb52cb0761dba19 (diff) |
scsi: lpfc: Fix use-after-free rport memory access in lpfc_register_remote_port()
Due to a target port D_ID swap, it is possible for the
lpfc_register_remote_port() routine to touch post mortem fc_rport memory
when trying to access fc_rport->dd_data.
The D_ID swap causes a simultaneous call to lpfc_unregister_remote_port(),
where fc_remote_port_delete() reclaims fc_rport memory.
Remove the fc_rport->dd_data->pnode NULL assignment because the following
line reassigns ndlp->rport with an fc_rport object from
fc_remote_port_add() anyways. The pnode nullification is superfluous.
Signed-off-by: Justin Tee <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Acked-by: Martin Wilck <[email protected]>
Signed-off-by: Martin K. Petersen <[email protected]>
Diffstat (limited to 'rust/helpers/helpers.c')
0 files changed, 0 insertions, 0 deletions