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> --- iprconfig.8 | 4 ++-- iprconfig.c | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/iprconfig.8 b/iprconfig.8 index 65bb1e3..8e7d3d6 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 c4f8c77..81729ef 100644 --- a/iprconfig.c +++ b/iprconfig.c @@ -10958,7 +10958,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; @@ -15110,7 +15111,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; } @@ -15161,7 +15163,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