Spdk/lib
Mike Gerdts dda952809b lvol: avoid premature reference to blob
As an lvstore is being loaded, blobs are itereated with
spdk_bs_iter_next(), which opens a blob, calls lvol_next_lvol(), then
closes the blob.  Since the blob struct that is passed to
load_next_lvol() is only transiently opened, it should not be stored
with the lvol.

A short while later, the lvstore opens each lvol by calling
spdk_lvol_open() from _vbdev_lvs_examine_cb(). At that time, the lvstore
holds the open reference and only then is it safe to keep a reference to
the blob.

Change-Id: I309227b23b59058a58167a9dac35af5fabc29d98
Signed-off-by: Mike Gerdts <mgerdts@nvidia.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14965
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
2023-01-10 13:12:41 +00:00
..
accel accel: accel buffer allocation functions 2023-01-09 12:37:37 +00:00
bdev bdev: Fix the bug that counters for copy command were not reset 2023-01-10 13:12:05 +00:00
blob blob: blob_open_opts_copy macro uses wrong type 2023-01-09 12:41:30 +00:00
blobfs blob: Add translate_lba operation 2022-12-08 12:54:54 +00:00
conf update Intel copyright notices 2022-11-10 08:28:53 +00:00
dma update Intel copyright notices 2022-11-10 08:28:53 +00:00
env_dpdk env_dpdk: do not use rte_version_release() 2023-01-10 13:09:18 +00:00
env_ocf update Intel copyright notices 2022-11-10 08:28:53 +00:00
event app: enable configurable msg_mempool_size for reactor 2022-12-14 08:04:55 +00:00
ftl misc: Fix spelling mistakes 2022-12-09 08:16:18 +00:00
idxd lib/idxd: change max idxd completions processed 2022-12-08 12:55:58 +00:00
init misc: Fix spelling mistakes 2022-12-09 08:16:18 +00:00
ioat update Intel copyright notices 2022-11-10 08:28:53 +00:00
iscsi iscsi: add EXITING conns to pg after full_feature_migrate 2022-12-23 09:27:48 +00:00
json json: add spdk_json_write_named_double 2022-11-22 10:01:43 +00:00
jsonrpc lib/jsonrpc: check the return value from setsockopt 2022-12-20 09:17:59 +00:00
log log: add deprecated tracking API 2022-12-07 17:45:53 +00:00
lvol lvol: avoid premature reference to blob 2023-01-10 13:12:41 +00:00
nbd update Intel copyright notices 2022-11-10 08:28:53 +00:00
notify update Intel copyright notices 2022-11-10 08:28:53 +00:00
nvme nvme: add API to get outstanding reqs number 2023-01-09 14:49:11 +00:00
nvmf lib/nvmf: sanity check connect buffer 2023-01-06 15:54:18 +00:00
rdma update Intel copyright notices 2022-11-10 08:28:53 +00:00
reduce update Intel copyright notices 2022-11-10 08:28:53 +00:00
rocksdb rocksdb: remove spdk_thread 2022-11-23 08:22:04 +00:00
rpc lib/rpc: add RPC allow list 2022-11-15 08:31:02 +00:00
scsi misc: Fix spelling mistakes 2022-12-09 08:16:18 +00:00
sock sock: set errno in spdk_sock_flush() 2022-12-01 12:49:04 +00:00
thread thread: cache a number of iobuf buffers on each channel 2022-12-16 09:06:07 +00:00
trace lib/trace: add trace_get_info RPC 2022-12-05 09:50:38 +00:00
trace_parser update Intel copyright notices 2022-11-10 08:28:53 +00:00
ut_mock update Intel copyright notices 2022-11-10 08:28:53 +00:00
util util: Add spdk_strcpy_replace() to replace substrings 2023-01-10 13:12:05 +00:00
vfio_user update Intel copyright notices 2022-11-10 08:28:53 +00:00
vfu_tgt update Intel copyright notices 2022-11-10 08:28:53 +00:00
vhost lib/vhost: use the TAILQ_FOREACH_SAFE instead 2023-01-09 12:44:06 +00:00
virtio lib/virtio: add the ctx NULL check before dereferencing it 2022-11-30 08:50:48 +00:00
vmd lib/vmd: fix build with clang 15 2023-01-10 13:10:00 +00:00
Makefile configure: rename --with-reduce --with-vbdev-compress 2022-12-08 12:55:27 +00:00