mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 11:41:38 -04:00
target: use per-attribute show and store methods
This also allows to remove the target-specific old configfs macros, and gets rid of the target_core_fabric_configfs.h header which only had one function declaration left that could be moved to a better place. Signed-off-by: Christoph Hellwig <[email protected]> Reviewed-by: Nicholas Bellinger <[email protected]> Acked-by: Nicholas Bellinger <[email protected]> Signed-off-by: Nicholas Bellinger <[email protected]>
This commit is contained in:
parent
64c6be0e6d
commit
2eafd72939
21 changed files with 1689 additions and 3061 deletions
|
|
@ -53,7 +53,6 @@
|
|||
|
||||
#include <target/target_core_base.h>
|
||||
#include <target/target_core_fabric.h>
|
||||
#include <target/target_core_fabric_configfs.h>
|
||||
|
||||
#include <asm/hypervisor.h>
|
||||
|
||||
|
|
@ -1438,9 +1437,10 @@ static void scsiback_aborted_task(struct se_cmd *se_cmd)
|
|||
{
|
||||
}
|
||||
|
||||
static ssize_t scsiback_tpg_param_show_alias(struct se_portal_group *se_tpg,
|
||||
static ssize_t scsiback_tpg_param_alias_show(struct config_item *item,
|
||||
char *page)
|
||||
{
|
||||
struct se_portal_group *se_tpg = param_to_tpg(item);
|
||||
struct scsiback_tpg *tpg = container_of(se_tpg, struct scsiback_tpg,
|
||||
se_tpg);
|
||||
ssize_t rb;
|
||||
|
|
@ -1452,9 +1452,10 @@ static ssize_t scsiback_tpg_param_show_alias(struct se_portal_group *se_tpg,
|
|||
return rb;
|
||||
}
|
||||
|
||||
static ssize_t scsiback_tpg_param_store_alias(struct se_portal_group *se_tpg,
|
||||
static ssize_t scsiback_tpg_param_alias_store(struct config_item *item,
|
||||
const char *page, size_t count)
|
||||
{
|
||||
struct se_portal_group *se_tpg = param_to_tpg(item);
|
||||
struct scsiback_tpg *tpg = container_of(se_tpg, struct scsiback_tpg,
|
||||
se_tpg);
|
||||
int len;
|
||||
|
|
@ -1474,10 +1475,10 @@ static ssize_t scsiback_tpg_param_store_alias(struct se_portal_group *se_tpg,
|
|||
return count;
|
||||
}
|
||||
|
||||
TF_TPG_PARAM_ATTR(scsiback, alias, S_IRUGO | S_IWUSR);
|
||||
CONFIGFS_ATTR(scsiback_tpg_param_, alias);
|
||||
|
||||
static struct configfs_attribute *scsiback_param_attrs[] = {
|
||||
&scsiback_tpg_param_alias.attr,
|
||||
&scsiback_tpg_param_attr_alias,
|
||||
NULL,
|
||||
};
|
||||
|
||||
|
|
@ -1585,9 +1586,9 @@ static int scsiback_drop_nexus(struct scsiback_tpg *tpg)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static ssize_t scsiback_tpg_show_nexus(struct se_portal_group *se_tpg,
|
||||
char *page)
|
||||
static ssize_t scsiback_tpg_nexus_show(struct config_item *item, char *page)
|
||||
{
|
||||
struct se_portal_group *se_tpg = to_tpg(item);
|
||||
struct scsiback_tpg *tpg = container_of(se_tpg,
|
||||
struct scsiback_tpg, se_tpg);
|
||||
struct scsiback_nexus *tv_nexus;
|
||||
|
|
@ -1606,10 +1607,10 @@ static ssize_t scsiback_tpg_show_nexus(struct se_portal_group *se_tpg,
|
|||
return ret;
|
||||
}
|
||||
|
||||
static ssize_t scsiback_tpg_store_nexus(struct se_portal_group *se_tpg,
|
||||
const char *page,
|
||||
size_t count)
|
||||
static ssize_t scsiback_tpg_nexus_store(struct config_item *item,
|
||||
const char *page, size_t count)
|
||||
{
|
||||
struct se_portal_group *se_tpg = to_tpg(item);
|
||||
struct scsiback_tpg *tpg = container_of(se_tpg,
|
||||
struct scsiback_tpg, se_tpg);
|
||||
struct scsiback_tport *tport_wwn = tpg->tport;
|
||||
|
|
@ -1681,26 +1682,25 @@ check_newline:
|
|||
return count;
|
||||
}
|
||||
|
||||
TF_TPG_BASE_ATTR(scsiback, nexus, S_IRUGO | S_IWUSR);
|
||||
CONFIGFS_ATTR(scsiback_tpg_, nexus);
|
||||
|
||||
static struct configfs_attribute *scsiback_tpg_attrs[] = {
|
||||
&scsiback_tpg_nexus.attr,
|
||||
&scsiback_tpg_attr_nexus,
|
||||
NULL,
|
||||
};
|
||||
|
||||
static ssize_t
|
||||
scsiback_wwn_show_attr_version(struct target_fabric_configfs *tf,
|
||||
char *page)
|
||||
scsiback_wwn_version_show(struct config_item *item, char *page)
|
||||
{
|
||||
return sprintf(page, "xen-pvscsi fabric module %s on %s/%s on "
|
||||
UTS_RELEASE"\n",
|
||||
VSCSI_VERSION, utsname()->sysname, utsname()->machine);
|
||||
}
|
||||
|
||||
TF_WWN_ATTR_RO(scsiback, version);
|
||||
CONFIGFS_ATTR_RO(scsiback_wwn_, version);
|
||||
|
||||
static struct configfs_attribute *scsiback_wwn_attrs[] = {
|
||||
&scsiback_wwn_version.attr,
|
||||
&scsiback_wwn_attr_version,
|
||||
NULL,
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue