Linux kernel source tree
Go to file
James Smart 4a0f4aff3c scsi: lpfc: Use list_for_each_entry_safe() in rscn_recovery_check()
In GID_PT mode with lpfc_ns_query=1, a race condition between iterating the
vport->fc_nodes list in lpfc_rscn_recovery_check() and cleanup of an ndlp
can trigger a crash while processing the RSCN of another initiator from the
same zone.

During iteration of the vport->fc_nodes list, an ndlp is cleaned up and
released. lpfc_dequeue_node() is called from lpfc_cleanup_node() leading to
a bad ndlp dereference in lpfc_rscn_recovery_check().

Change list_for_each_entry() to list_for_each_entry_safe() in
lpfc_rscn_recovery_check() to protect against removal of an initiator ndlp,
while walking the vport->fc_nodes list.

Link: https://lore.kernel.org/r/20220506035519.50908-7-jsmart2021@gmail.com
Co-developed-by: Justin Tee <justin.tee@broadcom.com>
Signed-off-by: Justin Tee <justin.tee@broadcom.com>
Signed-off-by: James Smart <jsmart2021@gmail.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2022-05-10 22:12:03 -04:00
Documentation scsi: ufs: ufshpb: Change sysfs node hpb_stats/rb_* prefix to start with rcmd_* 2022-05-10 22:01:52 -04:00
LICENSES
arch A set of x86 fixes and updates: 2022-04-03 12:15:47 -07:00
block
certs
crypto
drivers scsi: lpfc: Use list_for_each_entry_safe() in rscn_recovery_check() 2022-05-10 22:12:03 -04:00
fs Updates to Tracing: 2022-04-03 12:26:01 -07:00
include scsi: mpi3mr: Add support for NVMe passthrough 2022-05-02 17:02:42 -04:00
init
ipc
kernel Updates to Tracing: 2022-04-03 12:26:01 -07:00
lib
mm
net
samples
scripts
security
sound
tools A set of x86 fixes and updates: 2022-04-03 12:15:47 -07:00
usr
virt
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS scsi: iscsi: MAINTAINERS: Add Mike Christie as co-maintainer 2022-04-11 22:09:35 -04:00
Makefile Linux 5.18-rc1 2022-04-03 14:08:21 -07:00
README

README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.