Spdk/lib/bdev
Patrick Ohly 4cfae03606 bdev/rbd: full control over client configuration
When the caller of the RPC API has all the necessary information about
how to access a Ceph cluster, then having to create configuration
files before calling the RPC API is problematic (has to touch files
owned by a local admin, changes must be removed again).

But having to encode support for certain configuration options in SPDK
is also problematic, because that might change depending on the
librados version.

The approach taken here is to merely pass through arbitrary key/value
config options. Existing config files are ignored when that happens.
The caller of the RPC then has full control over the connection setup
and can be sure that he does not inherit settings from a local file
accidentally.

In addition, user management is supported now, with or without a
config. This is useful for accessing a volume with a less privileged
user. Previously, passing NULL to rados_create implicitly chose the
"admin" user.

Change-Id: I5e7f36092df663a3d7ac503c04fc624a8fe1208e
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Reviewed-on: https://review.gerrithub.io/430460
Reviewed-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2018-12-05 17:49:57 +00:00
..
aio bdev_aio: enable double buffering on write path 2018-11-12 21:56:24 +00:00
crypto bdev/crypto: break from name search loop on claim match 2018-12-03 15:55:27 +00:00
error bdev/part: use spdk_bdev_part_base instead of spdk_bdev as an API param 2018-11-28 22:51:30 +00:00
gpt bdev/gpt: use per-base split tailq 2018-11-28 22:51:30 +00:00
iscsi bdev: Use not C++ style comments // but C-style comments /* */ 2018-10-31 22:01:47 +00:00
lvol bdev: rename need_aligned_buffer to required_alignment 2018-11-05 22:32:58 +00:00
malloc Make: Add deps for each shared obj individually 2018-10-09 21:45:26 +00:00
null thread: Add a name parameter to spdk_register_io_device 2018-09-05 16:00:54 +00:00
nvme bdev/nvme: forbid attaching two controllers with the same name 2018-12-03 19:52:26 +00:00
passthru bdev/passthru: unregister IO device in vbdev destruct callback 2018-11-16 07:47:55 +00:00
pmem pmem: print logs on debug build 2018-12-05 15:20:07 +00:00
raid bdev/raid: raid_bdev_add_base_device: fix wrong param in log 2018-11-02 22:19:02 +00:00
rbd bdev/rbd: full control over client configuration 2018-12-05 17:49:57 +00:00
rpc QoS/Bdev: add the RPC support for the bandwidth rate limit 2018-10-09 18:26:44 +00:00
split bdev/split: use per-base split tailq 2018-11-28 22:51:30 +00:00
virtio log: remove "trace" from internal API 2018-12-03 19:50:15 +00:00
bdev.c lib/trace: show specific usage of trace mask 2018-11-30 14:52:28 +00:00
Makefile CONFIG: add missing CONFIG_ options 2018-10-04 21:31:42 +00:00
part.c bdev/part: use spdk_bdev_part_base instead of spdk_bdev as an API param 2018-11-28 22:51:30 +00:00
scsi_nvme.c bdev: move error union to internal spdk_bdev_io struct 2018-06-26 20:04:07 +00:00
vtune.c mk: don't use '-include spdk/config.h' 2018-10-02 23:13:32 +00:00