On Fri, Apr 07, 2017 at 03:56:02PM +0800, Xiong Zhou wrote: > For some nvdimm DAX related tests, it's better to know > some details of devices being tested. Adding new prog > ndctl to manage nvdimms and jq to parse outputs. > > Signed-off-by: Xiong Zhou <xzhou@xxxxxxxxxx> > --- > common/config | 2 ++ > common/rc | 24 ++++++++++++++++++++++++ > 2 files changed, 26 insertions(+) > > diff --git a/common/config b/common/config > index 59041a3..dfdcb8e 100644 > --- a/common/config > +++ b/common/config > @@ -212,6 +212,8 @@ export XZ_PROG="`set_prog_path xz`" > export FLOCK_PROG="`set_prog_path flock`" > export LDD_PROG="`set_prog_path ldd`" > export TIMEOUT_PROG="`set_prog_path timeout`" > +export NDCTL_PROG="`set_prog_path ndctl`" > +export JQ_PROG="`set_prog_path jq`" > > # use 'udevadm settle' or 'udevsettle' to wait for lv to be settled. > # newer systems have udevadm command but older systems like RHEL5 don't. > diff --git a/common/rc b/common/rc > index e1ab2c6..0540fdc 100644 > --- a/common/rc > +++ b/common/rc > @@ -3148,6 +3148,30 @@ _require_chattr() > rm -f $TEST_DIR/syscalltest.out > } > > +_require_ndctl() > +{ > + ndctl list >> $seqres.full || \ Should this use $NDCTL_PROG instead of running ndctl directly? Ditto with jq in _require_jq(). > + _notrun "this test requires ndctl" > +} > + > +_require_jq() > +{ > + jq -V >> $seqres.full || \ > + _notrun "this test requires jq" > +} > + > +# $1 SCRATCH_DEV or TEST_DEV or other dev > +# $2 key > +_ndctl_get_pmem_key_value() > +{ > + _require_jq > + _require_ndctl > + > + $NDCTL_PROG list | \ > + $JQ_PROG -r ".[] | \ > + select(.blockdev == \"${1#/dev/}\") | .$2" > +} > + > _get_total_inode() > { > if [ -z "$1" ]; then > -- > 1.8.3.1 > -- To unsubscribe from this list: send the line "unsubscribe fstests" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html