Skip to content

Commit

Permalink
tcmu: Add netlink for device reconfiguration
Browse files Browse the repository at this point in the history
This gives tcmu the ability to handle events that can cause
reconfiguration, such as resize, path changes, write_cache, etc...

Signed-off-by: Bryant G. Ly <bryantly@linux.vnet.ibm.com>
Reviewed-By: Mike Christie <mchristi@redhat.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
  • Loading branch information
Bryant G. Ly authored and Nicholas Bellinger committed Jul 7, 2017
1 parent 9a8bb60 commit 1068be7
Showing 2 changed files with 13 additions and 0 deletions.
12 changes: 12 additions & 0 deletions drivers/target/target_core_user.c
Original file line number Diff line number Diff line change
@@ -1562,6 +1562,7 @@ static ssize_t tcmu_emulate_write_cache_store(struct config_item *item,
{
struct se_dev_attrib *da = container_of(to_config_group(item),
struct se_dev_attrib, da_group);
struct tcmu_dev *udev = TCMU_DEV(da->da_dev);
int val;
int ret;

@@ -1570,6 +1571,17 @@ static ssize_t tcmu_emulate_write_cache_store(struct config_item *item,
return ret;

da->emulate_write_cache = val;

/* Check if device has been configured before */
if (tcmu_dev_configured(udev)) {
ret = tcmu_netlink_event(TCMU_CMD_RECONFIG_DEVICE,
udev->uio_info.name,
udev->uio_info.uio_dev->minor);
if (ret) {
pr_err("Unable to reconfigure device\n");
return ret;
}
}
return count;
}
CONFIGFS_ATTR(tcmu_, emulate_write_cache);
1 change: 1 addition & 0 deletions include/uapi/linux/target_core_user.h
Original file line number Diff line number Diff line change
@@ -130,6 +130,7 @@ enum tcmu_genl_cmd {
TCMU_CMD_UNSPEC,
TCMU_CMD_ADDED_DEVICE,
TCMU_CMD_REMOVED_DEVICE,
TCMU_CMD_RECONFIG_DEVICE,
__TCMU_CMD_MAX,
};
#define TCMU_CMD_MAX (__TCMU_CMD_MAX - 1)

0 comments on commit 1068be7

Please sign in to comment.