set-write-cache-policy command in iprconfig was designed to enable/disable write cache of JBOD disks only. Now, the same interface can be used to configure vset write Cache. This patch modifies set-write-cache-policy to also support vset devices.
Signed-off-by: Gabriel Krisman Bertazi <kris...@linux.vnet.ibm.com> Acked-by: Brian King <brk...@linux.vnet.ibm.com> --- iprconfig.8 | 4 ++-- iprconfig.c | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/iprconfig.8 b/iprconfig.8 index f6e1643..ee034ca 100644 --- a/iprconfig.8 +++ b/iprconfig.8 @@ -601,8 +601,8 @@ Default is 2. .B set-write-cache-policy [device] [writeback|writethrough] .br Set the write cache policy for [device]. Available policies are -writeback and writethrough. This feature is only supported by JBOD -disks. Example: +writeback and writethrough. This command supports JBOD disk (write +cache) and Volume Sets (vset write cache). Example: .br .B iprconfig -c set-write-cache-policy sdp writeback .TP diff --git a/iprconfig.c b/iprconfig.c index 04ff837..8ca1484 100644 --- a/iprconfig.c +++ b/iprconfig.c @@ -10950,7 +10950,8 @@ int change_disk_config(i_container * i_con) i_con = add_i_con(i_con,_("No"),&disk_config_attr[2]); } - if (ipr_is_gscsi(dev)) { + if (ipr_is_gscsi(dev) || + (dev->ioa->vset_write_cache && ipr_is_volume_set(dev))) { disk_config_attr[3].option = 4; disk_config_attr[3].write_cache_policy = disk_attr.write_cache_policy; @@ -15102,7 +15103,8 @@ static int set_device_write_cache_policy(char **args, int num_args) return -EINVAL; } - if (!ipr_is_gscsi(dev)) { + if (!ipr_is_gscsi(dev) && + (!ipr_is_volume_set(dev) || !dev->ioa->vset_write_cache)) { scsi_err(dev, "Unable to set cache policy.\n"); return -EINVAL; } @@ -15153,7 +15155,7 @@ static int query_device_write_cache_policy(char **args, int num_args) fprintf(stderr, "Cannot find %s\n", args[0]); return -EINVAL; } - if (dev->scsi_dev_data->type != TYPE_DISK) { + if (!ipr_is_gscsi(dev) && !ipr_is_volume_set(dev)) { scsi_err(dev, "Cannot query write back policy.\n"); return -EINVAL; } -- 2.1.0 ------------------------------------------------------------------------------ _______________________________________________ Iprdd-devel mailing list Iprdd-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/iprdd-devel