linux-stable/drivers/nvme/target
Maurizio Lombardi 0755d3be2d nvme-tcp: can't set sk_user_data without write_lock
The sk_user_data pointer is supposed to be modified only while
holding the write_lock "sk_callback_lock", otherwise
we could race with other threads and crash the kernel.

we can't take the write_lock in nvmet_tcp_state_change()
because it would cause a deadlock, but the release_work queue
will set the pointer to NULL later so we can simply remove
the assignment.

Fixes: b5332a9f3f ("nvmet-tcp: fix incorrect locking in state_change sk callback")

Signed-off-by: Maurizio Lombardi <mlombard@redhat.com>
Reviewed-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Christoph Hellwig <hch@lst.de>
2021-07-05 10:14:44 +02:00
..
admin-cmd.c nvmet: use NVMET_MAX_NAMESPACES to set nn value 2021-06-21 08:34:10 +02:00
configfs.c nvmet: make ver stable once connection established 2021-06-17 15:51:19 +02:00
core.c for-5.14/drivers-2021-06-29 2021-06-30 12:21:16 -07:00
discovery.c nvmet: allow mn change if subsys not discovered 2021-06-17 15:51:19 +02:00
fabrics-cmd.c nvmet: demote fabrics cmd parse err msg to debug 2021-05-11 18:30:46 +02:00
fc.c nvmet-fc: do not check for invalid target port in nvmet_fc_handle_fcp_rqst() 2021-06-17 15:51:19 +02:00
fcloop.c nvme: constify static attribute_group structs 2021-02-02 10:26:10 +01:00
io-cmd-bdev.c nvmet: add ZBD over ZNS backend support 2021-06-17 15:51:21 +02:00
io-cmd-file.c nvmet: use req->cmd directly in file-ns fast path 2021-06-17 15:51:20 +02:00
Kconfig nvmet: fix a spelling mistake "incuding" -> "including" in Kconfig 2020-12-01 20:36:37 +01:00
loop.c nvme: use blk_execute_rq() for passthrough commands 2021-06-30 15:35:38 -06:00
Makefile nvmet: add ZBD over ZNS backend support 2021-06-17 15:51:21 +02:00
nvmet.h for-5.14/drivers-2021-06-29 2021-06-30 12:21:16 -07:00
passthru.c nvme: use return value from blk_execute_rq() 2021-06-30 15:35:45 -06:00
rdma.c nvmet: remove zeroout memset call for struct 2021-06-17 15:51:21 +02:00
tcp.c nvme-tcp: can't set sk_user_data without write_lock 2021-07-05 10:14:44 +02:00
trace.c nvmet: trace: parse Get LBA Status command in detail 2019-08-29 12:55:01 -07:00
trace.h nvmet: use min of device_path and disk len 2021-02-10 16:38:05 +01:00
zns.c nvmet: add ZBD over ZNS backend support 2021-06-17 15:51:21 +02:00