commit
9176a2449e
@ -623,8 +623,8 @@ int args_parse(app *app_values, cli_command *commands, int argc, const char **ar
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (is_command_blocked(commands, i)) {
|
if (is_command_blocked(commands, i)) {
|
||||||
cas_printf(LOG_ERR, "The command is not supported\n");
|
cas_printf(LOG_INFO, "The command is not supported\n");
|
||||||
return FAILURE;
|
return SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
configure_cli_commands(commands);
|
configure_cli_commands(commands);
|
||||||
|
@ -2237,7 +2237,7 @@ static cli_command cas_commands[] = {
|
|||||||
.options = attach_cache_options,
|
.options = attach_cache_options,
|
||||||
.command_handle_opts = start_cache_command_handle_option,
|
.command_handle_opts = start_cache_command_handle_option,
|
||||||
.handle = handle_cache_attach,
|
.handle = handle_cache_attach,
|
||||||
.flags = CLI_SU_REQUIRED,
|
.flags = (CLI_SU_REQUIRED | CLI_COMMAND_BLOCKED),
|
||||||
.help = NULL,
|
.help = NULL,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -2247,7 +2247,7 @@ static cli_command cas_commands[] = {
|
|||||||
.options = detach_options,
|
.options = detach_options,
|
||||||
.command_handle_opts = command_handle_option,
|
.command_handle_opts = command_handle_option,
|
||||||
.handle = handle_cache_detach,
|
.handle = handle_cache_detach,
|
||||||
.flags = CLI_SU_REQUIRED,
|
.flags = (CLI_SU_REQUIRED | CLI_COMMAND_BLOCKED),
|
||||||
.help = NULL,
|
.help = NULL,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -2538,20 +2538,27 @@ int cache_mngt_attach_device(const char *cache_name, size_t name_len,
|
|||||||
|
|
||||||
result = ocf_mngt_cache_get_by_name(cas_ctx, cache_name,
|
result = ocf_mngt_cache_get_by_name(cas_ctx, cache_name,
|
||||||
OCF_CACHE_NAME_SIZE, &cache);
|
OCF_CACHE_NAME_SIZE, &cache);
|
||||||
if (result)
|
if (result) {
|
||||||
|
ocf_volume_destroy(attach_cfg->device.volume);
|
||||||
goto err_get;
|
goto err_get;
|
||||||
|
}
|
||||||
|
|
||||||
result = _cache_mngt_lock_sync(cache);
|
result = _cache_mngt_lock_sync(cache);
|
||||||
if (result)
|
if (result) {
|
||||||
|
ocf_volume_destroy(attach_cfg->device.volume);
|
||||||
goto err_lock;
|
goto err_lock;
|
||||||
|
}
|
||||||
|
|
||||||
result = cache_mngt_check_bdev(&attach_cfg->device,
|
result = cache_mngt_check_bdev(&attach_cfg->device,
|
||||||
attach_cfg->force, true, cache);
|
attach_cfg->force, true, cache);
|
||||||
if (result)
|
if (result) {
|
||||||
|
ocf_volume_destroy(attach_cfg->device.volume);
|
||||||
goto err_ctx;
|
goto err_ctx;
|
||||||
|
}
|
||||||
|
|
||||||
context = kzalloc(sizeof(*context), GFP_KERNEL);
|
context = kzalloc(sizeof(*context), GFP_KERNEL);
|
||||||
if (!context) {
|
if (!context) {
|
||||||
|
ocf_volume_destroy(attach_cfg->device.volume);
|
||||||
result = -ENOMEM;
|
result = -ENOMEM;
|
||||||
goto err_ctx;
|
goto err_ctx;
|
||||||
}
|
}
|
||||||
|
@ -86,6 +86,10 @@ long cas_service_ioctl_ctrl(struct file *filp, unsigned int cmd,
|
|||||||
|
|
||||||
GET_CMD_INFO(cmd_info, arg);
|
GET_CMD_INFO(cmd_info, arg);
|
||||||
|
|
||||||
|
printk(KERN_ERR "Cache attach is not supported!\n");
|
||||||
|
retval = -ENOTSUP;
|
||||||
|
RETURN_CMD_RESULT(cmd_info, arg, retval);
|
||||||
|
|
||||||
cache_name_from_id(cache_name, cmd_info->cache_id);
|
cache_name_from_id(cache_name, cmd_info->cache_id);
|
||||||
|
|
||||||
retval = cache_mngt_attach_cache_cfg(cache_name, OCF_CACHE_NAME_SIZE,
|
retval = cache_mngt_attach_cache_cfg(cache_name, OCF_CACHE_NAME_SIZE,
|
||||||
@ -104,6 +108,9 @@ long cas_service_ioctl_ctrl(struct file *filp, unsigned int cmd,
|
|||||||
char cache_name[OCF_CACHE_NAME_SIZE];
|
char cache_name[OCF_CACHE_NAME_SIZE];
|
||||||
|
|
||||||
GET_CMD_INFO(cmd_info, arg);
|
GET_CMD_INFO(cmd_info, arg);
|
||||||
|
printk(KERN_ERR "Cache detach is not supported!\n");
|
||||||
|
retval = -ENOTSUP;
|
||||||
|
RETURN_CMD_RESULT(cmd_info, arg, retval);
|
||||||
|
|
||||||
cache_name_from_id(cache_name, cmd_info->cache_id);
|
cache_name_from_id(cache_name, cmd_info->cache_id);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user