[PATCHv3 0/2] target: make location of /var/targets configurable

From: Lee Duncan
Date: Thu Apr 14 2016 - 21:23:46 EST


These patches make the location of "/var/target" configurable,
though it still defauls to "/var/target".

This "target database directory" can only be changed
after the target_core_mod loads but before any
fabric drivers are loaded, and must be the pathname
of an existing directory.

This configuration is accomplished via the configfs
top-level target attribute "dbroot", i.e. dumping
out "/sys/kernel/config/target/dbroot" will normally
return "/var/target". Writing to this attribute
changes the loation where the kernel looks for the
target database.

The first patch creates this configurable value for
the "dbroot", and the second patch modifies users
of this directory to use this new attribute.

Changes from v2:
* Add locking around access to target driver list

Changes from v1:
* Only allow changing target DB root before it
can be used by others
* Validate that new DB root is a valid directory

Lee Duncan (2):
target: make target db location configurable
target: use new "dbroot" target attribute

drivers/target/target_core_alua.c | 6 ++--
drivers/target/target_core_configfs.c | 62 +++++++++++++++++++++++++++++++++++
drivers/target/target_core_internal.h | 6 ++++
drivers/target/target_core_pr.c | 2 +-
4 files changed, 72 insertions(+), 4 deletions(-)

--
2.1.4