ACK: [PATCH 4/5] fwts-test: Update the test scripts for new test environment (LP: #1201250)

Colin Ian King colin.king at canonical.com
Wed Feb 12 09:45:13 UTC 2014


On 11/02/14 12:49, Keng-Yu Lin wrote:
> Now the fwts-tests are run by `make check`.
> Makefile.am carries the environment variables.
> Update the scripts to use them.
> 
> Signed-off-by: Keng-Yu Lin <kengyu at canonical.com>
> ---
>  Makefile.am                                        |  76 +++
>  fwts-test/acpidump-0001/test-0001.sh               |   4 +-
>  fwts-test/acpitables-0001/test-0001.sh             |   4 +-
>  fwts-test/acpitables-0002/test-0001.sh             |   4 +-
>  fwts-test/acpitables-0002/test-0002.sh             |   4 +-
>  fwts-test/acpitables-0003/test-0001.sh             |   4 +-
>  fwts-test/acpitables-0004/test-0001.sh             |   4 +-
>  fwts-test/acpitables-0005/test-0001.sh             |   4 +-
>  fwts-test/acpitables-0006/test-0001.sh             |   4 +-
>  fwts-test/acpitables-0007/test-0001.sh             |   4 +-
>  fwts-test/acpitables-0008/test-0001.sh             |   4 +-
>  fwts-test/apicinstance-0001/test-0001.sh           |   4 +-
>  fwts-test/apicinstance-0001/test-0002.sh           |   4 +-
>  fwts-test/arg-help-0001/test-0001.sh               |   2 +-
>  fwts-test/arg-help-0001/test-0002.sh               |   2 +-
>  fwts-test/arg-json-0001/test-0001.sh               |   6 +-
>  fwts-test/arg-json-0001/test-0002.sh               |   6 +-
>  fwts-test/arg-json-0001/test-0003.sh               |   4 +-
>  fwts-test/arg-json-0001/test-0004.sh               |   4 +-
>  fwts-test/arg-klog-0001/test-0001.sh               |   4 +-
>  fwts-test/arg-klog-0001/test-0002.sh               |   4 +-
>  fwts-test/arg-log-fields-0001/test-0001.sh         |   2 +-
>  fwts-test/arg-log-format-0001/klog-0001.log        | 550 ++++++++++-----------
>  fwts-test/arg-log-format-0001/klog-0003.log        | 394 +++++++--------
>  fwts-test/arg-log-format-0001/test-0001.sh         |   4 +-
>  fwts-test/arg-log-format-0001/test-0002.sh         |   4 +-
>  fwts-test/arg-log-format-0001/test-0003.sh         |   4 +-
>  fwts-test/arg-log-format-0001/test-0004.sh         |   4 +-
>  fwts-test/arg-quiet-0001/test-0001.sh              |   2 +-
>  fwts-test/arg-quiet-0001/test-0002.sh              |   2 +-
>  fwts-test/arg-results-0001/test-0001.sh            |   4 +-
>  fwts-test/arg-results-0001/test-0002.sh            |   4 +-
>  fwts-test/arg-results-0001/test-0003.sh            |   4 +-
>  fwts-test/arg-results-0001/test-0004.sh            |   4 +-
>  fwts-test/arg-results-0001/test-0005.sh            |   6 +-
>  fwts-test/arg-results-0001/test-0006.sh            |   6 +-
>  .../arg-results-no-separators-0001/test-0001.sh    |   4 +-
>  .../arg-show-progress-dialog-0001/test-0001.sh     |   4 +-
>  .../arg-show-progress-dialog-0001/test-0002.sh     |   4 +-
>  fwts-test/arg-show-tests-0001/test-0001.sh         |   2 +-
>  fwts-test/arg-show-tests-0001/test-0002.sh         |   2 +-
>  fwts-test/arg-show-tests-full-0001/test-0001.sh    |   2 +-
>  fwts-test/arg-table-path-0001/test-0001.sh         |   4 +-
>  fwts-test/arg-table-path-0001/test-0002.sh         |   4 +-
>  fwts-test/arg-width-0001/test-0001.sh              |   4 +-
>  fwts-test/arg-width-0001/test-0002.sh              |   4 +-
>  fwts-test/arg-width-0001/test-0003.sh              |   4 +-
>  fwts-test/arg-width-0001/test-0004.sh              |   4 +-
>  fwts-test/arg-width-0001/test-0005.sh              |   4 +-
>  fwts-test/arg-width-0001/test-0006.sh              |   4 +-
>  fwts-test/arg-width-0001/test-0007.sh              |   4 +-
>  fwts-test/arg-width-0001/test-0008.sh              |   4 +-
>  fwts-test/checksum-0001/test-0001.sh               |   4 +-
>  fwts-test/checksum-0001/test-0003.sh               |   4 +-
>  fwts-test/checksum-0001/test-0004.sh               |   4 +-
>  fwts-test/disassemble-0001/test-0001.sh            |   6 +-
>  fwts-test/klog-0001/test-0001.sh                   |   4 +-
>  fwts-test/klog-0001/test-0002.sh                   |   4 +-
>  fwts-test/klog-0001/test-0003.sh                   |   4 +-
>  fwts-test/klog-0002/test-0001.sh                   |   4 +-
>  fwts-test/klog-0002/test-0002.sh                   |   4 +-
>  fwts-test/klog-0002/test-0003.sh                   |   4 +-
>  fwts-test/method-0001/test-0001.sh                 |   4 +-
>  fwts-test/oops-0001/test-0001.sh                   |   4 +-
>  fwts-test/oops-0001/test-0002.sh                   |   4 +-
>  fwts-test/oops-0001/test-0003.sh                   |   4 +-
>  fwts-test/osilinux-0001/test-0001.sh               |   4 +-
>  fwts-test/osilinux-0001/test-0002.sh               |   4 +-
>  fwts-test/syntaxcheck-0001/test-0001.sh            |   4 +-
>  fwts-test/wmi-0001/test-0001.sh                    |   4 +-
>  fwts-test/wmi-0001/test-0002.sh                    |   4 +-
>  fwts-test/wmi-0001/test-0003.sh                    |   4 +-
>  72 files changed, 683 insertions(+), 607 deletions(-)
> 
> diff --git a/Makefile.am b/Makefile.am
> index 057c47c..b7c0503 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -1,3 +1,79 @@
>  SUBDIRS = src data src/utilities
>  
>  ACLOCAL_AMFLAGS = -I m4
> +
> +TESTS_ENVIRONMENT = export LC_ALL=C;
> +TESTS_ENVIRONMENT += export FWTS='$(srcdir)/src/fwts';
> +TESTS_ENVIRONMENT += export FWTSTESTDIR='$(srcdir)/fwts-test';
> +TESTS_ENVIRONMENT += export TMP=/tmp;
> +TESTS_ENVIRONMENT += export FAILURE_LOG=/tmp/failure.log;
> +
> +TESTS = fwts-test/acpidump-0001/test-0001.sh \
> +	fwts-test/acpitables-0001/test-0001.sh \
> +	fwts-test/acpitables-0002/test-0001.sh \
> +	fwts-test/acpitables-0002/test-0002.sh \
> +	fwts-test/acpitables-0003/test-0001.sh \
> +	fwts-test/acpitables-0004/test-0001.sh \
> +	fwts-test/acpitables-0005/test-0001.sh \
> +	fwts-test/acpitables-0006/test-0001.sh \
> +	fwts-test/acpitables-0007/test-0001.sh \
> +	fwts-test/acpitables-0008/test-0001.sh \
> +	fwts-test/apicinstance-0001/test-0001.sh \
> +	fwts-test/apicinstance-0001/test-0002.sh \
> +	fwts-test/arg-help-0001/test-0001.sh \
> +	fwts-test/arg-help-0001/test-0002.sh \
> +	fwts-test/arg-json-0001/test-0001.sh \
> +	fwts-test/arg-json-0001/test-0002.sh \
> +	fwts-test/arg-json-0001/test-0003.sh \
> +	fwts-test/arg-json-0001/test-0004.sh \
> +	fwts-test/arg-klog-0001/test-0001.sh \
> +	fwts-test/arg-klog-0001/test-0002.sh \
> +	fwts-test/arg-log-fields-0001/test-0001.sh \
> +	fwts-test/arg-log-format-0001/test-0001.sh \
> +	fwts-test/arg-log-format-0001/test-0002.sh \
> +	fwts-test/arg-log-format-0001/test-0003.sh \
> +	fwts-test/arg-log-format-0001/test-0004.sh \
> +	fwts-test/arg-quiet-0001/test-0001.sh \
> +	fwts-test/arg-quiet-0001/test-0002.sh \
> +	fwts-test/arg-results-0001/test-0001.sh \
> +	fwts-test/arg-results-0001/test-0002.sh \
> +	fwts-test/arg-results-0001/test-0003.sh \
> +	fwts-test/arg-results-0001/test-0004.sh \
> +	fwts-test/arg-results-0001/test-0005.sh \
> +	fwts-test/arg-results-0001/test-0006.sh \
> +	fwts-test/arg-results-no-separators-0001/test-0001.sh \
> +	fwts-test/arg-show-progress-dialog-0001/test-0001.sh \
> +	fwts-test/arg-show-progress-dialog-0001/test-0002.sh \
> +	fwts-test/arg-show-tests-0001/test-0001.sh \
> +	fwts-test/arg-show-tests-0001/test-0002.sh \
> +	fwts-test/arg-show-tests-full-0001/test-0001.sh \
> +	fwts-test/arg-table-path-0001/test-0001.sh \
> +	fwts-test/arg-table-path-0001/test-0002.sh \
> +	fwts-test/arg-width-0001/test-0001.sh \
> +	fwts-test/arg-width-0001/test-0002.sh \
> +	fwts-test/arg-width-0001/test-0003.sh \
> +	fwts-test/arg-width-0001/test-0004.sh \
> +	fwts-test/arg-width-0001/test-0005.sh \
> +	fwts-test/arg-width-0001/test-0006.sh \
> +	fwts-test/arg-width-0001/test-0007.sh \
> +	fwts-test/arg-width-0001/test-0008.sh \
> +	fwts-test/checksum-0001/test-0001.sh \
> +	fwts-test/checksum-0001/test-0003.sh \
> +	fwts-test/checksum-0001/test-0004.sh \
> +	fwts-test/disassemble-0001/test-0001.sh \
> +	fwts-test/klog-0001/test-0001.sh \
> +	fwts-test/klog-0001/test-0002.sh \
> +	fwts-test/klog-0001/test-0003.sh \
> +	fwts-test/klog-0002/test-0001.sh \
> +	fwts-test/klog-0002/test-0002.sh \
> +	fwts-test/klog-0002/test-0003.sh \
> +	fwts-test/method-0001/test-0001.sh \
> +	fwts-test/oops-0001/test-0001.sh \
> +	fwts-test/oops-0001/test-0002.sh \
> +	fwts-test/oops-0001/test-0003.sh \
> +	fwts-test/osilinux-0001/test-0001.sh \
> +	fwts-test/osilinux-0001/test-0002.sh \
> +	fwts-test/syntaxcheck-0001/test-0001.sh \
> +	fwts-test/wmi-0001/test-0001.sh \
> +	fwts-test/wmi-0001/test-0002.sh \
> +	fwts-test/wmi-0001/test-0003.sh
> diff --git a/fwts-test/acpidump-0001/test-0001.sh b/fwts-test/acpidump-0001/test-0001.sh
> index fa0a1ef..94b3cdd 100755
> --- a/fwts-test/acpidump-0001/test-0001.sh
> +++ b/fwts-test/acpidump-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test acpidump against known ACPI tables"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/acpidump.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump.log acpidump - | grep "^[0-9]*[ ]*acpidump" | cut -c7- > $TMPLOG
> -diff $TMPLOG acpidump-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/acpidump-0001/acpidump.log acpidump - | grep "^[0-9]*[ ]*acpidump" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/acpidump-0001/acpidump-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/acpitables-0001/test-0001.sh b/fwts-test/acpitables-0001/test-0001.sh
> index 47fc7c4..f349698 100755
> --- a/fwts-test/acpitables-0001/test-0001.sh
> +++ b/fwts-test/acpitables-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test apcitables against known correct ACPI tables"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/acpitables.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> -diff $TMPLOG acpitables-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/acpitables-0001/acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/acpitables-0001/acpitables-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/acpitables-0002/test-0001.sh b/fwts-test/acpitables-0002/test-0001.sh
> index 9081182..94432fc 100755
> --- a/fwts-test/acpitables-0002/test-0001.sh
> +++ b/fwts-test/acpitables-0002/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test apcitables against known correct ACPI APIC tables"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/acpitables.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> -diff $TMPLOG acpitables-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/acpitables-0002/acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/acpitables-0002/acpitables-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/acpitables-0002/test-0002.sh b/fwts-test/acpitables-0002/test-0002.sh
> index 4162a05..dff2ee3 100755
> --- a/fwts-test/acpitables-0002/test-0002.sh
> +++ b/fwts-test/acpitables-0002/test-0002.sh
> @@ -4,8 +4,8 @@ TEST="Test apcitables against incorrect ACPI APIC tables"
>  NAME=test-0002.sh
>  TMPLOG=$TMP/acpitables.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables"| cut -c7- > $TMPLOG
> -diff $TMPLOG acpitables-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/acpitables-0002/acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables"| cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/acpitables-0002/acpitables-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/acpitables-0003/test-0001.sh b/fwts-test/acpitables-0003/test-0001.sh
> index 8fff054..7f35850 100755
> --- a/fwts-test/acpitables-0003/test-0001.sh
> +++ b/fwts-test/acpitables-0003/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test apcitables against broken ACPI FADT"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/acpitables.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> -diff $TMPLOG acpitables-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/acpitables-0003/acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/acpitables-0003/acpitables-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/acpitables-0004/test-0001.sh b/fwts-test/acpitables-0004/test-0001.sh
> index 70a8601..cd90205 100755
> --- a/fwts-test/acpitables-0004/test-0001.sh
> +++ b/fwts-test/acpitables-0004/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test apcitables against broken ACPI HPET table"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/acpitables.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> -diff $TMPLOG acpitables-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/acpitables-0004/acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/acpitables-0004/acpitables-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/acpitables-0005/test-0001.sh b/fwts-test/acpitables-0005/test-0001.sh
> index cb26cb7..b6c1c5b 100755
> --- a/fwts-test/acpitables-0005/test-0001.sh
> +++ b/fwts-test/acpitables-0005/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test apcitables against broken ACPI MCFG table"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/acpitables.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> -diff $TMPLOG acpitables-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/acpitables-0005/acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/acpitables-0005/acpitables-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/acpitables-0006/test-0001.sh b/fwts-test/acpitables-0006/test-0001.sh
> index 2036d3a..77d2c8b 100755
> --- a/fwts-test/acpitables-0006/test-0001.sh
> +++ b/fwts-test/acpitables-0006/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test apcitables against broken ACPI RSDT table"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/acpitables.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> -diff $TMPLOG acpitables-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/acpitables-0006/acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/acpitables-0006/acpitables-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/acpitables-0007/test-0001.sh b/fwts-test/acpitables-0007/test-0001.sh
> index 770a8d3..8ca8ce9 100755
> --- a/fwts-test/acpitables-0007/test-0001.sh
> +++ b/fwts-test/acpitables-0007/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test apcitables against broken ACPI XSDT table"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/acpitables.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> -diff $TMPLOG acpitables-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/acpitables-0007/acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/acpitables-0007/acpitables-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/acpitables-0008/test-0001.sh b/fwts-test/acpitables-0008/test-0001.sh
> index 844cfeb..68e7c5a 100755
> --- a/fwts-test/acpitables-0008/test-0001.sh
> +++ b/fwts-test/acpitables-0008/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test apcitables against broken ACPI RSDP"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/acpitables.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> -diff $TMPLOG acpitables-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/acpitables-0008/acpidump-0001.log acpitables - | grep "^[0-9]*[ ]*acpitables" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/acpitables-0008/acpitables-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/apicinstance-0001/test-0001.sh b/fwts-test/apicinstance-0001/test-0001.sh
> index 799cf4c..964b0d9 100755
> --- a/fwts-test/apicinstance-0001/test-0001.sh
> +++ b/fwts-test/apicinstance-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test apicinstance against known incorrect ACPI tables"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/apicinstance.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log apicinstance - | grep "^[0-9]*[ ]*apicinstance" | cut -c7- > $TMPLOG
> -diff $TMPLOG apicinstance-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/apicinstance-0001/acpidump-0001.log apicinstance - | grep "^[0-9]*[ ]*apicinstance" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/apicinstance-0001/apicinstance-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/apicinstance-0001/test-0002.sh b/fwts-test/apicinstance-0001/test-0002.sh
> index 0cb6c59..c92e16b 100755
> --- a/fwts-test/apicinstance-0001/test-0002.sh
> +++ b/fwts-test/apicinstance-0001/test-0002.sh
> @@ -4,8 +4,8 @@ TEST="Test apicinstance against known correct ACPI tables"
>  NAME=test-0002.sh
>  TMPLOG=$TMP/apicinstance.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0002.log apicinstance - | grep "^[0-9]*[ ]*apicinstance" | cut -c7- > $TMPLOG
> -diff $TMPLOG apicinstance-0002.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/apicinstance-0001/acpidump-0002.log apicinstance - | grep "^[0-9]*[ ]*apicinstance" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/apicinstance-0001/apicinstance-0002.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-help-0001/test-0001.sh b/fwts-test/arg-help-0001/test-0001.sh
> index 3dbee2e..d25f0ed 100755
> --- a/fwts-test/arg-help-0001/test-0001.sh
> +++ b/fwts-test/arg-help-0001/test-0001.sh
> @@ -7,7 +7,7 @@ HERE=`pwd`
>  
>  stty cols 80
>  $FWTS -h | grep -v "Show version" | grep -v "Usage" > $TMPLOG
> -diff $TMPLOG arg-help-0001.log >> $FAILURE_LOG
> +diff $TMPLOG $FWTSTESTDIR/arg-help-0001/arg-help-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-help-0001/test-0002.sh b/fwts-test/arg-help-0001/test-0002.sh
> index b2e271b..d23162e 100755
> --- a/fwts-test/arg-help-0001/test-0002.sh
> +++ b/fwts-test/arg-help-0001/test-0002.sh
> @@ -8,7 +8,7 @@ HERE=`pwd`
>  stty cols 80
>  
>  $FWTS --help | grep -v "Show version" | grep -v "Usage" > $TMPLOG
> -diff $TMPLOG arg-help-0002.log >> $FAILURE_LOG
> +diff $TMPLOG fwts-test/arg-help-0001/arg-help-0002.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-json-0001/test-0001.sh b/fwts-test/arg-json-0001/test-0001.sh
> index 56b61fd..23e0bb8 100755
> --- a/fwts-test/arg-json-0001/test-0001.sh
> +++ b/fwts-test/arg-json-0001/test-0001.sh
> @@ -3,10 +3,10 @@
>  TEST="Test --json-data-path option"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/klog.log.$$
> -HERE=`pwd`
> +HERE=$FWTSTESTDIR/arg-json-0001
>  
> -$FWTS --log-format="%line %owner " -w 80 --json-data-path=$HERE --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --json-data-path=$HERE --klog=$FWTSTESTDIR/arg-json-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-json-0001/klog-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-json-0001/test-0002.sh b/fwts-test/arg-json-0001/test-0002.sh
> index 4992302..3c6811c 100755
> --- a/fwts-test/arg-json-0001/test-0002.sh
> +++ b/fwts-test/arg-json-0001/test-0002.sh
> @@ -3,10 +3,10 @@
>  TEST="Test -j option"
>  NAME=test-0002.sh
>  TMPLOG=$TMP/klog.log.$$
> -HERE=`pwd`
> +HERE=$FWTSTESTDIR/arg-json-0001
>  
> -$FWTS --log-format="%line %owner " -w 80 -j $HERE --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0002.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 -j $HERE --klog=$FWTSTESTDIR/arg-json-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-json-0001/klog-0002.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-json-0001/test-0003.sh b/fwts-test/arg-json-0001/test-0003.sh
> index c6b90cb..b265b43 100755
> --- a/fwts-test/arg-json-0001/test-0003.sh
> +++ b/fwts-test/arg-json-0001/test-0003.sh
> @@ -5,8 +5,8 @@ NAME=test-0003.sh
>  TMPLOG=$TMP/klog.log.$$
>  HERE=`pwd`
>  
> -$FWTS --log-format="%line %owner " -w 80 --json-data-path=/xxxx/fooo --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0003.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --json-data-path=/xxxx/fooo --klog=$FWTSTESTDIR/arg-json-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-json-0001/klog-0003.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-json-0001/test-0004.sh b/fwts-test/arg-json-0001/test-0004.sh
> index e8fdbc8..1e9e38f 100755
> --- a/fwts-test/arg-json-0001/test-0004.sh
> +++ b/fwts-test/arg-json-0001/test-0004.sh
> @@ -5,8 +5,8 @@ NAME=test-0004.sh
>  TMPLOG=$TMP/klog.log.$$
>  HERE=`pwd`
>  
> -$FWTS --log-format="%line %owner " -w 80 -j /xxxx/fooo --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0004.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 -j /xxxx/fooo --klog=$FWTSTESTDIR/arg-json-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-json-0001/klog-0004.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-klog-0001/test-0001.sh b/fwts-test/arg-klog-0001/test-0001.sh
> index 127b8a1..4e1bb79 100755
> --- a/fwts-test/arg-klog-0001/test-0001.sh
> +++ b/fwts-test/arg-klog-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test --klog option"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-klog-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-klog-0001/klog-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-klog-0001/test-0002.sh b/fwts-test/arg-klog-0001/test-0002.sh
> index 9144897..4a26bb3 100755
> --- a/fwts-test/arg-klog-0001/test-0002.sh
> +++ b/fwts-test/arg-klog-0001/test-0002.sh
> @@ -4,8 +4,8 @@ TEST="Test -k option"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 -k klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data -k $FWTSTESTDIR/arg-klog-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-klog-0001/klog-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-log-fields-0001/test-0001.sh b/fwts-test/arg-log-fields-0001/test-0001.sh
> index d04a429..be9c359 100755
> --- a/fwts-test/arg-log-fields-0001/test-0001.sh
> +++ b/fwts-test/arg-log-fields-0001/test-0001.sh
> @@ -5,7 +5,7 @@ NAME=test-0001.sh
>  TMPLOG=$TMP/logfields.log.$$
>  
>  $FWTS --log-fields > $TMPLOG
> -diff $TMPLOG logfields-0001.log >> $FAILURE_LOG
> +diff $TMPLOG $FWTSTESTDIR/arg-log-fields-0001/logfields-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-log-format-0001/klog-0001.log b/fwts-test/arg-log-format-0001/klog-0001.log
> index 7c5b81a..db134e0 100644
> --- a/fwts-test/arg-log-format-0001/klog-0001.log
> +++ b/fwts-test/arg-log-format-0001/klog-0001.log
> @@ -1,275 +1,275 @@
> -klog            (00019) <16/05/12> HED  : klog: Scan kernel log for errors and
> -klog            (00020) <16/05/12> HED  : warnings.
> -klog            (00021) <16/05/12> SEP  : --------------------------------------
> -klog            (00022) <16/05/12> INF  : Test 1 of 1: Kernel log error check.
> -klog            (00023) <16/05/12> FAL H: FAILED [HIGH]
> -klog            (00024) <16/05/12> FAL H: KlogAcpiMultipleApicMadtFound: Test 1,
> -klog            (00025) <16/05/12> FAL H: HIGH Kernel message: [ 0.000000] ACPI:
> -klog            (00026) <16/05/12> FAL H: BIOS bug: multiple APIC/MADT found,
> -klog            (00027) <16/05/12> FAL H: using 0
> -klog            (00028) <16/05/12> NLN  : 
> -klog            (00029) <16/05/12> ADV  : ADVICE: The kernel has detected more
> -klog            (00030) <16/05/12> ADV  : than one ACPI Multiple APIC
> -klog            (00031) <16/05/12> ADV  : Description Table (MADT) (these tables
> -klog            (00032) <16/05/12> ADV  : have the "APIC" signature). There
> -klog            (00033) <16/05/12> ADV  : should only be one MADT and the kernel
> -klog            (00034) <16/05/12> ADV  : will by default select the first one.
> -klog            (00035) <16/05/12> ADV  : However, one can override this and
> -klog            (00036) <16/05/12> ADV  : select the Nth MADT using
> -klog            (00037) <16/05/12> ADV  : acpi_apic_instance=N.
> -klog            (00038) <16/05/12> NLN  : 
> -klog            (00039) <16/05/12> FAL H: FAILED [HIGH]
> -klog            (00040) <16/05/12> FAL H: KlogAcpi32Bit64BitAddressMismatch:
> -klog            (00041) <16/05/12> FAL H: Test 1, HIGH Kernel message: [
> -klog            (00042) <16/05/12> FAL H: 0.000000] ACPI Error: 32/64X address
> -klog            (00043) <16/05/12> FAL H: mismatch in Gpe0Block: 00008018
> -klog            (00044) <16/05/12> FAL H: /0000000000008028, using 32 (20090903
> -klog            (00045) <16/05/12> FAL H: /tbfadt-427)
> -klog            (00046) <16/05/12> NLN  : 
> -klog            (00047) <16/05/12> ADV  : ADVICE: The FADT table contains a
> -klog            (00048) <16/05/12> ADV  : mismatch between a 32 bit pointer and
> -klog            (00049) <16/05/12> ADV  : a 64 bit Generic Address pointer.
> -klog            (00050) <16/05/12> ADV  : Because these pointers are different,
> -klog            (00051) <16/05/12> ADV  : it suggests either one of them is
> -klog            (00052) <16/05/12> ADV  : incorrect. If a non-null 32 bit
> -klog            (00053) <16/05/12> ADV  : pointer exists, then the kernel will
> -klog            (00054) <16/05/12> ADV  : opt for this in preference to the 64
> -klog            (00055) <16/05/12> ADV  : bit pointer even though this is not in
> -klog            (00056) <16/05/12> ADV  : accordance to the ACPI specification.
> -klog            (00057) <16/05/12> NLN  : 
> -klog            (00058) <16/05/12> FAL C: FAILED [CRITICAL]
> -klog            (00059) <16/05/12> FAL C: KlogAcpiValidRsdpNotFound: Test 1,
> -klog            (00060) <16/05/12> FAL C: CRITICAL Kernel message: [ 0.000000]
> -klog            (00061) <16/05/12> FAL C: ACPI Error: A valid RSDP was not found
> -klog            (00062) <16/05/12> FAL C: (20090903/tbxfroot-219)
> -klog            (00063) <16/05/12> NLN  : 
> -klog            (00064) <16/05/12> ADV  : ADVICE: An ACPI compatible system must
> -klog            (00065) <16/05/12> ADV  : provide an RSDP (Root System
> -klog            (00066) <16/05/12> ADV  : Description Pointer). This structure
> -klog            (00067) <16/05/12> ADV  : provides the physical address of the
> -klog            (00068) <16/05/12> ADV  : RSDT and XSDT. Since this could not be
> -klog            (00069) <16/05/12> ADV  : found, the ACPI driver has had to
> -klog            (00070) <16/05/12> ADV  : disable ACPI support.
> -klog            (00071) <16/05/12> NLN  : 
> -klog            (00072) <16/05/12> FAL H: FAILED [HIGH] KlogAcpiTwoFacs: Test 1,
> -klog            (00073) <16/05/12> FAL H: HIGH Kernel message: [ 0.000000] ACPI
> -klog            (00074) <16/05/12> FAL H: Warning: 32/64 FACS address mismatch
> -klog            (00075) <16/05/12> FAL H: in FADT - two FACS tables! (20090903
> -klog            (00076) <16/05/12> FAL H: /tbfadt-369)
> -klog            (00077) <16/05/12> NLN  : 
> -klog            (00078) <16/05/12> ADV  : ADVICE: The FADT table contains a
> -klog            (00079) <16/05/12> ADV  : mismatch between the 32 bit pointer
> -klog            (00080) <16/05/12> ADV  : (FIRMWARE_CTRL) and 64 bit pointer
> -klog            (00081) <16/05/12> ADV  : (X_FIRMWARE_CTRL) pointer to the FACS
> -klog            (00082) <16/05/12> ADV  : table. Section 5.2.9 of version 4.0a
> -klog            (00083) <16/05/12> ADV  : of the ACPI specification states that
> -klog            (00084) <16/05/12> ADV  : X_FIRMWARE_CTRL should be zero if
> -klog            (00085) <16/05/12> ADV  : FIRMWARE_CTRL is defined, or
> -klog            (00086) <16/05/12> ADV  : FIRMWARE_CTRL should be zero if
> -klog            (00087) <16/05/12> ADV  : X_FIRMWARE_CTRL is zero. With two
> -klog            (00088) <16/05/12> ADV  : different pointers defined, the kernel
> -klog            (00089) <16/05/12> ADV  : has to make a choice, and opts for the
> -klog            (00090) <16/05/12> ADV  : 32 bit pointer. Because these pointers
> -klog            (00091) <16/05/12> ADV  : are different, it suggests either one
> -klog            (00092) <16/05/12> ADV  : of them is incorrect, or different 32
> -klog            (00093) <16/05/12> ADV  : bit and 64 bit FACS tables are present
> -klog            (00094) <16/05/12> ADV  : in your system, which is NOT complaint
> -klog            (00095) <16/05/12> ADV  : with the ACPI specification. The
> -klog            (00096) <16/05/12> ADV  : kernel has to make a choice and opts
> -klog            (00097) <16/05/12> ADV  : for the 32 bit FIRMWARE_CTRL.
> -klog            (00098) <16/05/12> NLN  : 
> -klog            (00099) <16/05/12> FAL H: FAILED [HIGH]
> -klog            (00100) <16/05/12> FAL H: KlogAcpi32Bit64BitAddressMismatchInFadt
> -klog            (00101) <16/05/12> FAL H: : Test 1, HIGH Kernel message: [
> -klog            (00102) <16/05/12> FAL H: 0.000000] ACPI Warning: 32/64X FACS
> -klog            (00103) <16/05/12> FAL H: address mismatch in FADT - DEF2DF40
> -klog            (00104) <16/05/12> FAL H: /00000000DEF30D40, using 32 (20090903
> -klog            (00105) <16/05/12> FAL H: /tbfadt-486)
> -klog            (00106) <16/05/12> NLN  : 
> -klog            (00107) <16/05/12> ADV  : ADVICE: The FADT table contains
> -klog            (00108) <16/05/12> ADV  : Generic Address Structure that has a
> -klog            (00109) <16/05/12> ADV  : mismatch between the 32 bit and 64 bit
> -klog            (00110) <16/05/12> ADV  : versions of an address. This should be
> -klog            (00111) <16/05/12> ADV  : fixed so there are no mismatches. 
> -klog            (00112) <16/05/12> NLN  : 
> -klog            (00113) <16/05/12> FAL H: FAILED [HIGH]
> -klog            (00114) <16/05/12> FAL H: KlogAcpi32Bit64BitAddressMismatchInFadt
> -klog            (00115) <16/05/12> FAL H: : Test 1, HIGH Kernel message: [
> -klog            (00116) <16/05/12> FAL H: 0.000000] ACPI Warning: 32/64X length
> -klog            (00117) <16/05/12> FAL H: mismatch in Gpe1Block: 0/32 20090521
> -klog            (00118) <16/05/12> FAL H: tbfadt-527
> -klog            (00119) <16/05/12> NLN  : 
> -klog            (00120) <16/05/12> ADV  : ADVICE: The FADT table contains
> -klog            (00121) <16/05/12> ADV  : Generic Address Structure that has a
> -klog            (00122) <16/05/12> ADV  : mismatch between the 32 bit and 64 bit
> -klog            (00123) <16/05/12> ADV  : versions of an address. This should be
> -klog            (00124) <16/05/12> ADV  : fixed so there are no mismatches. 
> -klog            (00125) <16/05/12> NLN  : 
> -klog            (00126) <16/05/12> FAL H: FAILED [HIGH] KlogAcpiBadAmlCode: Test
> -klog            (00127) <16/05/12> FAL H: 1, HIGH Kernel message: [ 0.000000]
> -klog            (00128) <16/05/12> FAL H: ACPI Warning: BIOS XSDT has NULL entry
> -klog            (00129) <16/05/12> FAL H: , using RSDT (20110112/tbutils-663)
> -klog            (00130) <16/05/12> NLN  : 
> -klog            (00131) <16/05/12> ADV  : ADVICE: ACPI AML intepreter has found
> -klog            (00132) <16/05/12> ADV  : some non-conforming AML code. This
> -klog            (00133) <16/05/12> ADV  : should be investigated and fixed.
> -klog            (00134) <16/05/12> NLN  : 
> -klog            (00135) <16/05/12> FAL H: FAILED [HIGH]
> -klog            (00136) <16/05/12> FAL H: KlogAcpiFadtInvalidLength: Test 1,
> -klog            (00137) <16/05/12> FAL H: HIGH Kernel message: [ 0.000000] ACPI
> -klog            (00138) <16/05/12> FAL H: Warning: Invalid length for
> -klog            (00139) <16/05/12> FAL H: Pm1aControlBlock: 32, using default 16
> -klog            (00140) <16/05/12> FAL H: (20090903/tbfadt-607)
> -klog            (00141) <16/05/12> NLN  : 
> -klog            (00142) <16/05/12> ADV  : ADVICE: This item in the FADT is the
> -klog            (00143) <16/05/12> ADV  : incorrect length. Should be corrected.
> -klog            (00144) <16/05/12> NLN  : 
> -klog            (00145) <16/05/12> FAL H: FAILED [HIGH]
> -klog            (00146) <16/05/12> FAL H: KlogAcpiOptionalFieldZeroAddressOrLength
> -klog            (00147) <16/05/12> FAL H: : Test 1, HIGH Kernel message: [
> -klog            (00148) <16/05/12> FAL H: 0.000000] ACPI Warning: Optional field
> -klog            (00149) <16/05/12> FAL H: Gpe1Block has zero address or length:
> -klog            (00150) <16/05/12> FAL H: 000000000000102C/0 20090521 tbfadt-558
> -klog            (00151) <16/05/12> NLN  : 
> -klog            (00152) <16/05/12> ADV  : ADVICE: An ACPI table contains Generic
> -klog            (00153) <16/05/12> ADV  : Address Structure that has an address
> -klog            (00154) <16/05/12> ADV  : that is incorrectly set to zero, or a
> -klog            (00155) <16/05/12> ADV  : zero length. This needs to be fixed. 
> -klog            (00156) <16/05/12> NLN  : 
> -klog            (00157) <16/05/12> FAL H: FAILED [HIGH]
> -klog            (00158) <16/05/12> FAL H: KlogAcpiOptionalFieldZeroAddressOrLength
> -klog            (00159) <16/05/12> FAL H: : Test 1, HIGH Kernel message: [
> -klog            (00160) <16/05/12> FAL H: 0.000000] ACPI Warning: Optional field
> -klog            (00161) <16/05/12> FAL H: Pm2ControlBlock has zero address or
> -klog            (00162) <16/05/12> FAL H: length: 0000000000000000/1 20090521
> -klog            (00163) <16/05/12> FAL H: tbfadt-558
> -klog            (00164) <16/05/12> NLN  : 
> -klog            (00165) <16/05/12> ADV  : ADVICE: An ACPI table contains Generic
> -klog            (00166) <16/05/12> ADV  : Address Structure that has an address
> -klog            (00167) <16/05/12> ADV  : that is incorrectly set to zero, or a
> -klog            (00168) <16/05/12> ADV  : zero length. This needs to be fixed. 
> -klog            (00169) <16/05/12> NLN  : 
> -klog            (00170) <16/05/12> FAL H: FAILED [HIGH]
> -klog            (00171) <16/05/12> FAL H: KlogAcpiOptionalFieldZeroAddressOrLength
> -klog            (00172) <16/05/12> FAL H: : Test 1, HIGH Kernel message: [
> -klog            (00173) <16/05/12> FAL H: 0.000000] ACPI Warning (tbfadt-0460):
> -klog            (00174) <16/05/12> FAL H: Optional field "Gpe1Block" has zero
> -klog            (00175) <16/05/12> FAL H: address or length: 000000000000102C/0
> -klog            (00176) <16/05/12> FAL H: [20080926]
> -klog            (00177) <16/05/12> NLN  : 
> -klog            (00178) <16/05/12> ADV  : ADVICE: An ACPI table contains Generic
> -klog            (00179) <16/05/12> ADV  : Address Structure that has an address
> -klog            (00180) <16/05/12> ADV  : that is incorrectly set to zero, or a
> -klog            (00181) <16/05/12> ADV  : zero length. This needs to be fixed. 
> -klog            (00182) <16/05/12> NLN  : 
> -klog            (00183) <16/05/12> FAL M: FAILED [MEDIUM]
> -klog            (00184) <16/05/12> FAL M: KlogBiosMtrrIncorrectMask: Test 1,
> -klog            (00185) <16/05/12> FAL M: MEDIUM Kernel message: [ 0.000000]
> -klog            (00186) <16/05/12> FAL M: mtrr: your BIOS has configured an
> -klog            (00187) <16/05/12> FAL M: incorrect mask, fixing it.
> -klog            (00188) <16/05/12> NLN  : 
> -klog            (00189) <16/05/12> ADV  : ADVICE: The Memory Type Range
> -klog            (00190) <16/05/12> ADV  : Registers (MTRRs) which define memory
> -klog            (00191) <16/05/12> ADV  : caching policy are misconfigued by the
> -klog            (00192) <16/05/12> ADV  : BIOS. In this case, the mask is
> -klog            (00193) <16/05/12> ADV  : incorrectly set and the kernel has
> -klog            (00194) <16/05/12> ADV  : detected this and worked around the
> -klog            (00195) <16/05/12> ADV  : firmware bug.
> -klog            (00196) <16/05/12> NLN  : 
> -klog            (00197) <16/05/12> FAL C: FAILED [CRITICAL]
> -klog            (00198) <16/05/12> FAL C: KlogBiosCpuMtrrMisconfigured: Test 1,
> -klog            (00199) <16/05/12> FAL C: CRITICAL Kernel message: [ 0.000000]
> -klog            (00200) <16/05/12> FAL C: WARNING: BIOS bug: CPU MTRRs don't
> -klog            (00201) <16/05/12> FAL C: cover all of memory, losing 1408MB of
> -klog            (00202) <16/05/12> FAL C: RAM.
> -klog            (00203) <16/05/12> NLN  : 
> -klog            (00204) <16/05/12> ADV  : ADVICE: The Memory Type Range
> -klog            (00205) <16/05/12> ADV  : Registers (MTRRs) which define memory
> -klog            (00206) <16/05/12> ADV  : caching policy are misconfigued by the
> -klog            (00207) <16/05/12> ADV  : BIOS and don't appear to cover all
> -klog            (00208) <16/05/12> ADV  : available physical memory. The kernel
> -klog            (00209) <16/05/12> ADV  : has detected this and has reduced the
> -klog            (00210) <16/05/12> ADV  : amount of memory available to be safe.
> -klog            (00211) <16/05/12> ADV  : Either check that the BIOS memory
> -klog            (00212) <16/05/12> ADV  : caching options are set correctly or
> -klog            (00213) <16/05/12> ADV  : contact your BIOS vendor to get this
> -klog            (00214) <16/05/12> ADV  : fixed.
> -klog            (00215) <16/05/12> NLN  : 
> -klog            (00216) <16/05/12> FAL H: FAILED [HIGH] KlogAcpiUnknownAmlOpcode
> -klog            (00217) <16/05/12> FAL H: : Test 1, HIGH Kernel message: [
> -klog            (00218) <16/05/12> FAL H: 0.022719] ACPI Error: Found unknown
> -klog            (00219) <16/05/12> FAL H: opcode 0xFD at AML address f7ffe14c
> -klog            (00220) <16/05/12> FAL H: offset 0xE8, ignoring (20110112
> -klog            (00221) <16/05/12> FAL H: /psloop-141)
> -klog            (00222) <16/05/12> NLN  : 
> -klog            (00223) <16/05/12> ADV  : ADVICE: ACPI execution run time error:
> -klog            (00224) <16/05/12> ADV  : The ACPI interpreter has reached an
> -klog            (00225) <16/05/12> ADV  : opcode that is unknown, this normally
> -klog            (00226) <16/05/12> ADV  : is a bug in the underlying AML code
> -klog            (00227) <16/05/12> ADV  : either because of badly written AML
> -klog            (00228) <16/05/12> ADV  : code or the compiler has produced code
> -klog            (00229) <16/05/12> ADV  : that is incorrect or the ACPI
> -klog            (00230) <16/05/12> ADV  : interpreter does not support this
> -klog            (00231) <16/05/12> ADV  : valid opcode. 
> -klog            (00232) <16/05/12> NLN  : 
> -klog            (00233) <16/05/12> FAL C: FAILED [CRITICAL]
> -klog            (00234) <16/05/12> FAL C: KlogAcpiDetectedUnsupportedOpCode:
> -klog            (00235) <16/05/12> FAL C: Test 1, CRITICAL Kernel message: [
> -klog            (00236) <16/05/12> FAL C: 0.025463] ACPI Warning: Detected an
> -klog            (00237) <16/05/12> FAL C: unsupported executable opcode at
> -klog            (00238) <16/05/12> FAL C: module-level: [0x007B] at table offset
> -klog            (00239) <16/05/12> FAL C: 0x00C3 (20110112/psloop-526)
> -klog            (00240) <16/05/12> NLN  : 
> -klog            (00241) <16/05/12> ADV  : ADVICE: An illegal AML opcode has been
> -klog            (00242) <16/05/12> ADV  : found and is ignored. This indicates
> -klog            (00243) <16/05/12> ADV  : either badly compiled code or opcode
> -klog            (00244) <16/05/12> ADV  : corruption in the DSDT or SSDT tables
> -klog            (00245) <16/05/12> ADV  : or a bug in the ACPI execution engine.
> -klog            (00246) <16/05/12> ADV  : Recommend disassembing using iasl to
> -klog            (00247) <16/05/12> ADV  : find any offending code.
> -klog            (00248) <16/05/12> NLN  : 
> -klog            (00249) <16/05/12> FAL H: FAILED [HIGH]
> -klog            (00250) <16/05/12> FAL H: KlogAcpiObjectAlreadyExists: Test 1,
> -klog            (00251) <16/05/12> FAL H: HIGH Kernel message: [ 0.034090] ACPI
> -klog            (00252) <16/05/12> FAL H: Error: Method parse/execution failed
> -klog            (00253) <16/05/12> FAL H: [_SB_.PCI0._OSC] (Node ee025630),
> -klog            (00254) <16/05/12> FAL H: AE_ALREADY_EXISTS (20110112
> -klog            (00255) <16/05/12> FAL H: /psparse-536)
> -klog            (00256) <16/05/12> NLN  : 
> -klog            (00257) <16/05/12> ADV  : ADVICE: This is a bug picked up by the
> -klog            (00258) <16/05/12> ADV  : kernel, but as yet, the firmware test
> -klog            (00259) <16/05/12> ADV  : suite has no diagnostic advice for
> -klog            (00260) <16/05/12> ADV  : this particular problem.
> -klog            (00261) <16/05/12> NLN  : 
> -klog            (00262) <16/05/12> FAL H: FAILED [HIGH] KlogAcpiFirmwareError:
> -klog            (00263) <16/05/12> FAL H: Test 1, HIGH Kernel message: [
> -klog            (00264) <16/05/12> FAL H: 0.040119] [Firmware Bug]: the BIOS has
> -klog            (00265) <16/05/12> FAL H: corrupted hw-PMU resources (MSR 186 is
> -klog            (00266) <16/05/12> FAL H: 400000)
> -klog            (00267) <16/05/12> NLN  : 
> -klog            (00268) <16/05/12> ADV  : ADVICE: The kernel has detected a
> -klog            (00269) <16/05/12> ADV  : Firmware bug in the BIOS or ACPI which
> -klog            (00270) <16/05/12> ADV  : needs investigating and fixing.
> -klog            (00271) <16/05/12> NLN  : 
> -klog            (00272) <16/05/12> FAL C: FAILED [CRITICAL]
> -klog            (00273) <16/05/12> FAL C: KlogAcpiDetectedUnsupportedOpCode:
> -klog            (00274) <16/05/12> FAL C: Test 1, CRITICAL Kernel message: [
> -klog            (00275) <16/05/12> FAL C: 0.042222] ACPI Warning: Detected an
> -klog            (00276) <16/05/12> FAL C: unsupported executable opcode at
> -klog            (00277) <16/05/12> FAL C: module-level: [0x0070] at table offset
> -klog            (00278) <16/05/12> FAL C: 0x2366 (20100121/psloop-526)
> -klog            (00279) <16/05/12> NLN  : 
> -klog            (00280) <16/05/12> ADV  : ADVICE: An illegal AML opcode has been
> -klog            (00281) <16/05/12> ADV  : found and is ignored. This indicates
> -klog            (00282) <16/05/12> ADV  : either badly compiled code or opcode
> -klog            (00283) <16/05/12> ADV  : corruption in the DSDT or SSDT tables
> -klog            (00284) <16/05/12> ADV  : or a bug in the ACPI execution engine.
> -klog            (00285) <16/05/12> ADV  : Recommend disassembing using iasl to
> -klog            (00286) <16/05/12> ADV  : find any offending code.
> -klog            (00287) <16/05/12> NLN  : 
> -klog            (00288) <16/05/12> INF  : Found 18 unique errors in kernel log.
> -klog            (00289) <16/05/12> NLN  : 
> -klog            (00290) <16/05/12> SEP  : ======================================
> -klog            (00291) <16/05/12> SUM  : 0 passed, 18 failed, 0 warning, 0
> -klog            (00292) <16/05/12> SUM  : aborted, 0 skipped, 0 info only.
> -klog            (00293) <16/05/12> SEP  : ======================================
> +klog            (00021) <10/02/14> HED  : klog: Scan kernel log for errors and
> +klog            (00022) <10/02/14> HED  : warnings.
> +klog            (00023) <10/02/14> SEP  : --------------------------------------
> +klog            (00024) <10/02/14> INF  : Test 1 of 1: Kernel log error check.
> +klog            (00025) <10/02/14> FAL H: FAILED [HIGH]
> +klog            (00026) <10/02/14> FAL H: KlogAcpiMultipleApicMadtFound: Test 1,
> +klog            (00027) <10/02/14> FAL H: HIGH Kernel message: [ 0.000000] ACPI:
> +klog            (00028) <10/02/14> FAL H: BIOS bug: multiple APIC/MADT found,
> +klog            (00029) <10/02/14> FAL H: using 0
> +klog            (00030) <10/02/14> NLN  : 
> +klog            (00031) <10/02/14> ADV  : ADVICE: The kernel has detected more
> +klog            (00032) <10/02/14> ADV  : than one ACPI Multiple APIC
> +klog            (00033) <10/02/14> ADV  : Description Table (MADT) (these tables
> +klog            (00034) <10/02/14> ADV  : have the "APIC" signature). There
> +klog            (00035) <10/02/14> ADV  : should only be one MADT and the kernel
> +klog            (00036) <10/02/14> ADV  : will by default select the first one.
> +klog            (00037) <10/02/14> ADV  : However, one can override this and
> +klog            (00038) <10/02/14> ADV  : select the Nth MADT using
> +klog            (00039) <10/02/14> ADV  : acpi_apic_instance=N.
> +klog            (00040) <10/02/14> NLN  : 
> +klog            (00041) <10/02/14> FAL H: FAILED [HIGH]
> +klog            (00042) <10/02/14> FAL H: KlogAcpi32Bit64BitAddressMismatch:
> +klog            (00043) <10/02/14> FAL H: Test 1, HIGH Kernel message: [
> +klog            (00044) <10/02/14> FAL H: 0.000000] ACPI Error: 32/64X address
> +klog            (00045) <10/02/14> FAL H: mismatch in Gpe0Block: 00008018
> +klog            (00046) <10/02/14> FAL H: /0000000000008028, using 32 (20090903
> +klog            (00047) <10/02/14> FAL H: /tbfadt-427)
> +klog            (00048) <10/02/14> NLN  : 
> +klog            (00049) <10/02/14> ADV  : ADVICE: The FADT table contains a
> +klog            (00050) <10/02/14> ADV  : mismatch between a 32 bit pointer and
> +klog            (00051) <10/02/14> ADV  : a 64 bit Generic Address pointer.
> +klog            (00052) <10/02/14> ADV  : Because these pointers are different,
> +klog            (00053) <10/02/14> ADV  : it suggests either one of them is
> +klog            (00054) <10/02/14> ADV  : incorrect. If a non-null 32 bit
> +klog            (00055) <10/02/14> ADV  : pointer exists, then the kernel will
> +klog            (00056) <10/02/14> ADV  : opt for this in preference to the 64
> +klog            (00057) <10/02/14> ADV  : bit pointer even though this is not in
> +klog            (00058) <10/02/14> ADV  : accordance to the ACPI specification.
> +klog            (00059) <10/02/14> NLN  : 
> +klog            (00060) <10/02/14> FAL C: FAILED [CRITICAL]
> +klog            (00061) <10/02/14> FAL C: KlogAcpiValidRsdpNotFound: Test 1,
> +klog            (00062) <10/02/14> FAL C: CRITICAL Kernel message: [ 0.000000]
> +klog            (00063) <10/02/14> FAL C: ACPI Error: A valid RSDP was not found
> +klog            (00064) <10/02/14> FAL C: (20090903/tbxfroot-219)
> +klog            (00065) <10/02/14> NLN  : 
> +klog            (00066) <10/02/14> ADV  : ADVICE: An ACPI compatible system must
> +klog            (00067) <10/02/14> ADV  : provide an RSDP (Root System
> +klog            (00068) <10/02/14> ADV  : Description Pointer). This structure
> +klog            (00069) <10/02/14> ADV  : provides the physical address of the
> +klog            (00070) <10/02/14> ADV  : RSDT and XSDT. Since this could not be
> +klog            (00071) <10/02/14> ADV  : found, the ACPI driver has had to
> +klog            (00072) <10/02/14> ADV  : disable ACPI support.
> +klog            (00073) <10/02/14> NLN  : 
> +klog            (00074) <10/02/14> FAL H: FAILED [HIGH] KlogAcpiTwoFacs: Test 1,
> +klog            (00075) <10/02/14> FAL H: HIGH Kernel message: [ 0.000000] ACPI
> +klog            (00076) <10/02/14> FAL H: Warning: 32/64 FACS address mismatch
> +klog            (00077) <10/02/14> FAL H: in FADT - two FACS tables! (20090903
> +klog            (00078) <10/02/14> FAL H: /tbfadt-369)
> +klog            (00079) <10/02/14> NLN  : 
> +klog            (00080) <10/02/14> ADV  : ADVICE: The FADT table contains a
> +klog            (00081) <10/02/14> ADV  : mismatch between the 32 bit pointer
> +klog            (00082) <10/02/14> ADV  : (FIRMWARE_CTRL) and 64 bit pointer
> +klog            (00083) <10/02/14> ADV  : (X_FIRMWARE_CTRL) pointer to the FACS
> +klog            (00084) <10/02/14> ADV  : table. Section 5.2.9 of version 4.0a
> +klog            (00085) <10/02/14> ADV  : of the ACPI specification states that
> +klog            (00086) <10/02/14> ADV  : X_FIRMWARE_CTRL should be zero if
> +klog            (00087) <10/02/14> ADV  : FIRMWARE_CTRL is defined, or
> +klog            (00088) <10/02/14> ADV  : FIRMWARE_CTRL should be zero if
> +klog            (00089) <10/02/14> ADV  : X_FIRMWARE_CTRL is zero. With two
> +klog            (00090) <10/02/14> ADV  : different pointers defined, the kernel
> +klog            (00091) <10/02/14> ADV  : has to make a choice, and opts for the
> +klog            (00092) <10/02/14> ADV  : 32 bit pointer. Because these pointers
> +klog            (00093) <10/02/14> ADV  : are different, it suggests either one
> +klog            (00094) <10/02/14> ADV  : of them is incorrect, or different 32
> +klog            (00095) <10/02/14> ADV  : bit and 64 bit FACS tables are present
> +klog            (00096) <10/02/14> ADV  : in your system, which is NOT complaint
> +klog            (00097) <10/02/14> ADV  : with the ACPI specification. The
> +klog            (00098) <10/02/14> ADV  : kernel has to make a choice and opts
> +klog            (00099) <10/02/14> ADV  : for the 32 bit FIRMWARE_CTRL.
> +klog            (00100) <10/02/14> NLN  : 
> +klog            (00101) <10/02/14> FAL H: FAILED [HIGH]
> +klog            (00102) <10/02/14> FAL H: KlogAcpi32Bit64BitAddressMismatchInFadt
> +klog            (00103) <10/02/14> FAL H: : Test 1, HIGH Kernel message: [
> +klog            (00104) <10/02/14> FAL H: 0.000000] ACPI Warning: 32/64X FACS
> +klog            (00105) <10/02/14> FAL H: address mismatch in FADT - DEF2DF40
> +klog            (00106) <10/02/14> FAL H: /00000000DEF30D40, using 32 (20090903
> +klog            (00107) <10/02/14> FAL H: /tbfadt-486)
> +klog            (00108) <10/02/14> NLN  : 
> +klog            (00109) <10/02/14> ADV  : ADVICE: The FADT table contains
> +klog            (00110) <10/02/14> ADV  : Generic Address Structure that has a
> +klog            (00111) <10/02/14> ADV  : mismatch between the 32 bit and 64 bit
> +klog            (00112) <10/02/14> ADV  : versions of an address. This should be
> +klog            (00113) <10/02/14> ADV  : fixed so there are no mismatches. 
> +klog            (00114) <10/02/14> NLN  : 
> +klog            (00115) <10/02/14> FAL H: FAILED [HIGH]
> +klog            (00116) <10/02/14> FAL H: KlogAcpi32Bit64BitAddressMismatchInFadt
> +klog            (00117) <10/02/14> FAL H: : Test 1, HIGH Kernel message: [
> +klog            (00118) <10/02/14> FAL H: 0.000000] ACPI Warning: 32/64X length
> +klog            (00119) <10/02/14> FAL H: mismatch in Gpe1Block: 0/32 20090521
> +klog            (00120) <10/02/14> FAL H: tbfadt-527
> +klog            (00121) <10/02/14> NLN  : 
> +klog            (00122) <10/02/14> ADV  : ADVICE: The FADT table contains
> +klog            (00123) <10/02/14> ADV  : Generic Address Structure that has a
> +klog            (00124) <10/02/14> ADV  : mismatch between the 32 bit and 64 bit
> +klog            (00125) <10/02/14> ADV  : versions of an address. This should be
> +klog            (00126) <10/02/14> ADV  : fixed so there are no mismatches. 
> +klog            (00127) <10/02/14> NLN  : 
> +klog            (00128) <10/02/14> FAL H: FAILED [HIGH] KlogAcpiBadAmlCode: Test
> +klog            (00129) <10/02/14> FAL H: 1, HIGH Kernel message: [ 0.000000]
> +klog            (00130) <10/02/14> FAL H: ACPI Warning: BIOS XSDT has NULL entry
> +klog            (00131) <10/02/14> FAL H: , using RSDT (20110112/tbutils-663)
> +klog            (00132) <10/02/14> NLN  : 
> +klog            (00133) <10/02/14> ADV  : ADVICE: ACPI AML intepreter has found
> +klog            (00134) <10/02/14> ADV  : some non-conforming AML code. This
> +klog            (00135) <10/02/14> ADV  : should be investigated and fixed.
> +klog            (00136) <10/02/14> NLN  : 
> +klog            (00137) <10/02/14> FAL H: FAILED [HIGH]
> +klog            (00138) <10/02/14> FAL H: KlogAcpiFadtInvalidLength: Test 1,
> +klog            (00139) <10/02/14> FAL H: HIGH Kernel message: [ 0.000000] ACPI
> +klog            (00140) <10/02/14> FAL H: Warning: Invalid length for
> +klog            (00141) <10/02/14> FAL H: Pm1aControlBlock: 32, using default 16
> +klog            (00142) <10/02/14> FAL H: (20090903/tbfadt-607)
> +klog            (00143) <10/02/14> NLN  : 
> +klog            (00144) <10/02/14> ADV  : ADVICE: This item in the FADT is the
> +klog            (00145) <10/02/14> ADV  : incorrect length. Should be corrected.
> +klog            (00146) <10/02/14> NLN  : 
> +klog            (00147) <10/02/14> FAL H: FAILED [HIGH]
> +klog            (00148) <10/02/14> FAL H: KlogAcpiOptionalFieldZeroAddressOrLength
> +klog            (00149) <10/02/14> FAL H: : Test 1, HIGH Kernel message: [
> +klog            (00150) <10/02/14> FAL H: 0.000000] ACPI Warning: Optional field
> +klog            (00151) <10/02/14> FAL H: Gpe1Block has zero address or length:
> +klog            (00152) <10/02/14> FAL H: 000000000000102C/0 20090521 tbfadt-558
> +klog            (00153) <10/02/14> NLN  : 
> +klog            (00154) <10/02/14> ADV  : ADVICE: An ACPI table contains Generic
> +klog            (00155) <10/02/14> ADV  : Address Structure that has an address
> +klog            (00156) <10/02/14> ADV  : that is incorrectly set to zero, or a
> +klog            (00157) <10/02/14> ADV  : zero length. This needs to be fixed. 
> +klog            (00158) <10/02/14> NLN  : 
> +klog            (00159) <10/02/14> FAL H: FAILED [HIGH]
> +klog            (00160) <10/02/14> FAL H: KlogAcpiOptionalFieldZeroAddressOrLength
> +klog            (00161) <10/02/14> FAL H: : Test 1, HIGH Kernel message: [
> +klog            (00162) <10/02/14> FAL H: 0.000000] ACPI Warning: Optional field
> +klog            (00163) <10/02/14> FAL H: Pm2ControlBlock has zero address or
> +klog            (00164) <10/02/14> FAL H: length: 0000000000000000/1 20090521
> +klog            (00165) <10/02/14> FAL H: tbfadt-558
> +klog            (00166) <10/02/14> NLN  : 
> +klog            (00167) <10/02/14> ADV  : ADVICE: An ACPI table contains Generic
> +klog            (00168) <10/02/14> ADV  : Address Structure that has an address
> +klog            (00169) <10/02/14> ADV  : that is incorrectly set to zero, or a
> +klog            (00170) <10/02/14> ADV  : zero length. This needs to be fixed. 
> +klog            (00171) <10/02/14> NLN  : 
> +klog            (00172) <10/02/14> FAL H: FAILED [HIGH]
> +klog            (00173) <10/02/14> FAL H: KlogAcpiOptionalFieldZeroAddressOrLength
> +klog            (00174) <10/02/14> FAL H: : Test 1, HIGH Kernel message: [
> +klog            (00175) <10/02/14> FAL H: 0.000000] ACPI Warning (tbfadt-0460):
> +klog            (00176) <10/02/14> FAL H: Optional field "Gpe1Block" has zero
> +klog            (00177) <10/02/14> FAL H: address or length: 000000000000102C/0
> +klog            (00178) <10/02/14> FAL H: [20080926]
> +klog            (00179) <10/02/14> NLN  : 
> +klog            (00180) <10/02/14> ADV  : ADVICE: An ACPI table contains Generic
> +klog            (00181) <10/02/14> ADV  : Address Structure that has an address
> +klog            (00182) <10/02/14> ADV  : that is incorrectly set to zero, or a
> +klog            (00183) <10/02/14> ADV  : zero length. This needs to be fixed. 
> +klog            (00184) <10/02/14> NLN  : 
> +klog            (00185) <10/02/14> FAL M: FAILED [MEDIUM]
> +klog            (00186) <10/02/14> FAL M: KlogBiosMtrrIncorrectMask: Test 1,
> +klog            (00187) <10/02/14> FAL M: MEDIUM Kernel message: [ 0.000000]
> +klog            (00188) <10/02/14> FAL M: mtrr: your BIOS has configured an
> +klog            (00189) <10/02/14> FAL M: incorrect mask, fixing it.
> +klog            (00190) <10/02/14> NLN  : 
> +klog            (00191) <10/02/14> ADV  : ADVICE: The Memory Type Range
> +klog            (00192) <10/02/14> ADV  : Registers (MTRRs) which define memory
> +klog            (00193) <10/02/14> ADV  : caching policy are misconfigued by the
> +klog            (00194) <10/02/14> ADV  : BIOS. In this case, the mask is
> +klog            (00195) <10/02/14> ADV  : incorrectly set and the kernel has
> +klog            (00196) <10/02/14> ADV  : detected this and worked around the
> +klog            (00197) <10/02/14> ADV  : firmware bug.
> +klog            (00198) <10/02/14> NLN  : 
> +klog            (00199) <10/02/14> FAL C: FAILED [CRITICAL]
> +klog            (00200) <10/02/14> FAL C: KlogBiosCpuMtrrMisconfigured: Test 1,
> +klog            (00201) <10/02/14> FAL C: CRITICAL Kernel message: [ 0.000000]
> +klog            (00202) <10/02/14> FAL C: WARNING: BIOS bug: CPU MTRRs don't
> +klog            (00203) <10/02/14> FAL C: cover all of memory, losing 1408MB of
> +klog            (00204) <10/02/14> FAL C: RAM.
> +klog            (00205) <10/02/14> NLN  : 
> +klog            (00206) <10/02/14> ADV  : ADVICE: The Memory Type Range
> +klog            (00207) <10/02/14> ADV  : Registers (MTRRs) which define memory
> +klog            (00208) <10/02/14> ADV  : caching policy are misconfigued by the
> +klog            (00209) <10/02/14> ADV  : BIOS and don't appear to cover all
> +klog            (00210) <10/02/14> ADV  : available physical memory. The kernel
> +klog            (00211) <10/02/14> ADV  : has detected this and has reduced the
> +klog            (00212) <10/02/14> ADV  : amount of memory available to be safe.
> +klog            (00213) <10/02/14> ADV  : Either check that the BIOS memory
> +klog            (00214) <10/02/14> ADV  : caching options are set correctly or
> +klog            (00215) <10/02/14> ADV  : contact your BIOS vendor to get this
> +klog            (00216) <10/02/14> ADV  : fixed.
> +klog            (00217) <10/02/14> NLN  : 
> +klog            (00218) <10/02/14> FAL H: FAILED [HIGH] KlogAcpiUnknownAmlOpcode
> +klog            (00219) <10/02/14> FAL H: : Test 1, HIGH Kernel message: [
> +klog            (00220) <10/02/14> FAL H: 0.022719] ACPI Error: Found unknown
> +klog            (00221) <10/02/14> FAL H: opcode 0xFD at AML address f7ffe14c
> +klog            (00222) <10/02/14> FAL H: offset 0xE8, ignoring (20110112
> +klog            (00223) <10/02/14> FAL H: /psloop-141)
> +klog            (00224) <10/02/14> NLN  : 
> +klog            (00225) <10/02/14> ADV  : ADVICE: ACPI execution run time error:
> +klog            (00226) <10/02/14> ADV  : The ACPI interpreter has reached an
> +klog            (00227) <10/02/14> ADV  : opcode that is unknown, this normally
> +klog            (00228) <10/02/14> ADV  : is a bug in the underlying AML code
> +klog            (00229) <10/02/14> ADV  : either because of badly written AML
> +klog            (00230) <10/02/14> ADV  : code or the compiler has produced code
> +klog            (00231) <10/02/14> ADV  : that is incorrect or the ACPI
> +klog            (00232) <10/02/14> ADV  : interpreter does not support this
> +klog            (00233) <10/02/14> ADV  : valid opcode. 
> +klog            (00234) <10/02/14> NLN  : 
> +klog            (00235) <10/02/14> FAL C: FAILED [CRITICAL]
> +klog            (00236) <10/02/14> FAL C: KlogAcpiDetectedUnsupportedOpCode:
> +klog            (00237) <10/02/14> FAL C: Test 1, CRITICAL Kernel message: [
> +klog            (00238) <10/02/14> FAL C: 0.025463] ACPI Warning: Detected an
> +klog            (00239) <10/02/14> FAL C: unsupported executable opcode at
> +klog            (00240) <10/02/14> FAL C: module-level: [0x007B] at table offset
> +klog            (00241) <10/02/14> FAL C: 0x00C3 (20110112/psloop-526)
> +klog            (00242) <10/02/14> NLN  : 
> +klog            (00243) <10/02/14> ADV  : ADVICE: An illegal AML opcode has been
> +klog            (00244) <10/02/14> ADV  : found and is ignored. This indicates
> +klog            (00245) <10/02/14> ADV  : either badly compiled code or opcode
> +klog            (00246) <10/02/14> ADV  : corruption in the DSDT or SSDT tables
> +klog            (00247) <10/02/14> ADV  : or a bug in the ACPI execution engine.
> +klog            (00248) <10/02/14> ADV  : Recommend disassembing using iasl to
> +klog            (00249) <10/02/14> ADV  : find any offending code.
> +klog            (00250) <10/02/14> NLN  : 
> +klog            (00251) <10/02/14> FAL H: FAILED [HIGH]
> +klog            (00252) <10/02/14> FAL H: KlogAcpiObjectAlreadyExists: Test 1,
> +klog            (00253) <10/02/14> FAL H: HIGH Kernel message: [ 0.034090] ACPI
> +klog            (00254) <10/02/14> FAL H: Error: Method parse/execution failed
> +klog            (00255) <10/02/14> FAL H: [_SB_.PCI0._OSC] (Node ee025630),
> +klog            (00256) <10/02/14> FAL H: AE_ALREADY_EXISTS (20110112
> +klog            (00257) <10/02/14> FAL H: /psparse-536)
> +klog            (00258) <10/02/14> NLN  : 
> +klog            (00259) <10/02/14> ADV  : ADVICE: This is a bug picked up by the
> +klog            (00260) <10/02/14> ADV  : kernel, but as yet, the firmware test
> +klog            (00261) <10/02/14> ADV  : suite has no diagnostic advice for
> +klog            (00262) <10/02/14> ADV  : this particular problem.
> +klog            (00263) <10/02/14> NLN  : 
> +klog            (00264) <10/02/14> FAL H: FAILED [HIGH] KlogAcpiFirmwareError:
> +klog            (00265) <10/02/14> FAL H: Test 1, HIGH Kernel message: [
> +klog            (00266) <10/02/14> FAL H: 0.040119] [Firmware Bug]: the BIOS has
> +klog            (00267) <10/02/14> FAL H: corrupted hw-PMU resources (MSR 186 is
> +klog            (00268) <10/02/14> FAL H: 400000)
> +klog            (00269) <10/02/14> NLN  : 
> +klog            (00270) <10/02/14> ADV  : ADVICE: The kernel has detected a
> +klog            (00271) <10/02/14> ADV  : Firmware bug in the BIOS or ACPI which
> +klog            (00272) <10/02/14> ADV  : needs investigating and fixing.
> +klog            (00273) <10/02/14> NLN  : 
> +klog            (00274) <10/02/14> FAL C: FAILED [CRITICAL]
> +klog            (00275) <10/02/14> FAL C: KlogAcpiDetectedUnsupportedOpCode:
> +klog            (00276) <10/02/14> FAL C: Test 1, CRITICAL Kernel message: [
> +klog            (00277) <10/02/14> FAL C: 0.042222] ACPI Warning: Detected an
> +klog            (00278) <10/02/14> FAL C: unsupported executable opcode at
> +klog            (00279) <10/02/14> FAL C: module-level: [0x0070] at table offset
> +klog            (00280) <10/02/14> FAL C: 0x2366 (20100121/psloop-526)
> +klog            (00281) <10/02/14> NLN  : 
> +klog            (00282) <10/02/14> ADV  : ADVICE: An illegal AML opcode has been
> +klog            (00283) <10/02/14> ADV  : found and is ignored. This indicates
> +klog            (00284) <10/02/14> ADV  : either badly compiled code or opcode
> +klog            (00285) <10/02/14> ADV  : corruption in the DSDT or SSDT tables
> +klog            (00286) <10/02/14> ADV  : or a bug in the ACPI execution engine.
> +klog            (00287) <10/02/14> ADV  : Recommend disassembing using iasl to
> +klog            (00288) <10/02/14> ADV  : find any offending code.
> +klog            (00289) <10/02/14> NLN  : 
> +klog            (00290) <10/02/14> INF  : Found 18 unique errors in kernel log.
> +klog            (00291) <10/02/14> NLN  : 
> +klog            (00292) <10/02/14> SEP  : ======================================
> +klog            (00293) <10/02/14> SUM  : 0 passed, 18 failed, 0 warning, 0
> +klog            (00294) <10/02/14> SUM  : aborted, 0 skipped, 0 info only.
> +klog            (00295) <10/02/14> SEP  : ======================================
> diff --git a/fwts-test/arg-log-format-0001/klog-0003.log b/fwts-test/arg-log-format-0001/klog-0003.log
> index 13b48c2..3bc32af 100644
> --- a/fwts-test/arg-log-format-0001/klog-0003.log
> +++ b/fwts-test/arg-log-format-0001/klog-0003.log
> @@ -1,197 +1,197 @@
> -klog            00015: klog: Scan kernel log for errors and warnings.
> -klog            00016: ---------------------------------------------------------
> -klog            00017: Test 1 of 1: Kernel log error check.
> -klog            00018: FAILED [HIGH] KlogAcpiMultipleApicMadtFound: Test 1, HIGH
> -klog            00019: Kernel message: [ 0.000000] ACPI: BIOS bug: multiple APIC
> -klog            00020: /MADT found, using 0
> -klog            00021: 
> -klog            00022: ADVICE: The kernel has detected more than one ACPI
> -klog            00023: Multiple APIC Description Table (MADT) (these tables have
> -klog            00024: the "APIC" signature). There should only be one MADT and
> -klog            00025: the kernel will by default select the first one. However,
> -klog            00026: one can override this and select the Nth MADT using
> -klog            00027: acpi_apic_instance=N.
> -klog            00028: 
> -klog            00029: FAILED [HIGH] KlogAcpi32Bit64BitAddressMismatch: Test 1,
> -klog            00030: HIGH Kernel message: [ 0.000000] ACPI Error: 32/64X
> -klog            00031: address mismatch in Gpe0Block: 00008018/0000000000008028,
> -klog            00032: using 32 (20090903/tbfadt-427)
> -klog            00033: 
> -klog            00034: ADVICE: The FADT table contains a mismatch between a 32
> -klog            00035: bit pointer and a 64 bit Generic Address pointer. Because
> -klog            00036: these pointers are different, it suggests either one of
> -klog            00037: them is incorrect. If a non-null 32 bit pointer exists,
> -klog            00038: then the kernel will opt for this in preference to the 64
> -klog            00039: bit pointer even though this is not in accordance to the
> -klog            00040: ACPI specification.
> -klog            00041: 
> -klog            00042: FAILED [CRITICAL] KlogAcpiValidRsdpNotFound: Test 1,
> -klog            00043: CRITICAL Kernel message: [ 0.000000] ACPI Error: A valid
> -klog            00044: RSDP was not found (20090903/tbxfroot-219)
> -klog            00045: 
> -klog            00046: ADVICE: An ACPI compatible system must provide an RSDP
> -klog            00047: (Root System Description Pointer). This structure
> -klog            00048: provides the physical address of the RSDT and XSDT. Since
> -klog            00049: this could not be found, the ACPI driver has had to
> -klog            00050: disable ACPI support.
> -klog            00051: 
> -klog            00052: FAILED [HIGH] KlogAcpiTwoFacs: Test 1, HIGH Kernel
> -klog            00053: message: [ 0.000000] ACPI Warning: 32/64 FACS address
> -klog            00054: mismatch in FADT - two FACS tables! (20090903/tbfadt-369)
> -klog            00055: 
> -klog            00056: ADVICE: The FADT table contains a mismatch between the 32
> -klog            00057: bit pointer (FIRMWARE_CTRL) and 64 bit pointer
> -klog            00058: (X_FIRMWARE_CTRL) pointer to the FACS table. Section
> -klog            00059: 5.2.9 of version 4.0a of the ACPI specification states
> -klog            00060: that X_FIRMWARE_CTRL should be zero if FIRMWARE_CTRL is
> -klog            00061: defined, or FIRMWARE_CTRL should be zero if
> -klog            00062: X_FIRMWARE_CTRL is zero. With two different pointers
> -klog            00063: defined, the kernel has to make a choice, and opts for
> -klog            00064: the 32 bit pointer. Because these pointers are different,
> -klog            00065: it suggests either one of them is incorrect, or different
> -klog            00066: 32 bit and 64 bit FACS tables are present in your system,
> -klog            00067: which is NOT complaint with the ACPI specification. The
> -klog            00068: kernel has to make a choice and opts for the 32 bit
> -klog            00069: FIRMWARE_CTRL.
> -klog            00070: 
> -klog            00071: FAILED [HIGH] KlogAcpi32Bit64BitAddressMismatchInFadt:
> -klog            00072: Test 1, HIGH Kernel message: [ 0.000000] ACPI Warning: 32
> -klog            00073: /64X FACS address mismatch in FADT - DEF2DF40
> -klog            00074: /00000000DEF30D40, using 32 (20090903/tbfadt-486)
> -klog            00075: 
> -klog            00076: ADVICE: The FADT table contains Generic Address Structure
> -klog            00077: that has a mismatch between the 32 bit and 64 bit
> -klog            00078: versions of an address. This should be fixed so there are
> -klog            00079: no mismatches. 
> -klog            00080: 
> -klog            00081: FAILED [HIGH] KlogAcpi32Bit64BitAddressMismatchInFadt:
> -klog            00082: Test 1, HIGH Kernel message: [ 0.000000] ACPI Warning: 32
> -klog            00083: /64X length mismatch in Gpe1Block: 0/32 20090521
> -klog            00084: tbfadt-527
> -klog            00085: 
> -klog            00086: ADVICE: The FADT table contains Generic Address Structure
> -klog            00087: that has a mismatch between the 32 bit and 64 bit
> -klog            00088: versions of an address. This should be fixed so there are
> -klog            00089: no mismatches. 
> -klog            00090: 
> -klog            00091: FAILED [HIGH] KlogAcpiBadAmlCode: Test 1, HIGH Kernel
> -klog            00092: message: [ 0.000000] ACPI Warning: BIOS XSDT has NULL
> -klog            00093: entry, using RSDT (20110112/tbutils-663)
> -klog            00094: 
> -klog            00095: ADVICE: ACPI AML intepreter has found some non-conforming
> -klog            00096: AML code. This should be investigated and fixed.
> -klog            00097: 
> -klog            00098: FAILED [HIGH] KlogAcpiFadtInvalidLength: Test 1, HIGH
> -klog            00099: Kernel message: [ 0.000000] ACPI Warning: Invalid length
> -klog            00100: for Pm1aControlBlock: 32, using default 16 (20090903
> -klog            00101: /tbfadt-607)
> -klog            00102: 
> -klog            00103: ADVICE: This item in the FADT is the incorrect length.
> -klog            00104: Should be corrected.
> -klog            00105: 
> -klog            00106: FAILED [HIGH] KlogAcpiOptionalFieldZeroAddressOrLength:
> -klog            00107: Test 1, HIGH Kernel message: [ 0.000000] ACPI Warning:
> -klog            00108: Optional field Gpe1Block has zero address or length:
> -klog            00109: 000000000000102C/0 20090521 tbfadt-558
> -klog            00110: 
> -klog            00111: ADVICE: An ACPI table contains Generic Address Structure
> -klog            00112: that has an address that is incorrectly set to zero, or a
> -klog            00113: zero length. This needs to be fixed. 
> -klog            00114: 
> -klog            00115: FAILED [HIGH] KlogAcpiOptionalFieldZeroAddressOrLength:
> -klog            00116: Test 1, HIGH Kernel message: [ 0.000000] ACPI Warning:
> -klog            00117: Optional field Pm2ControlBlock has zero address or length
> -klog            00118: : 0000000000000000/1 20090521 tbfadt-558
> -klog            00119: 
> -klog            00120: ADVICE: An ACPI table contains Generic Address Structure
> -klog            00121: that has an address that is incorrectly set to zero, or a
> -klog            00122: zero length. This needs to be fixed. 
> -klog            00123: 
> -klog            00124: FAILED [HIGH] KlogAcpiOptionalFieldZeroAddressOrLength:
> -klog            00125: Test 1, HIGH Kernel message: [ 0.000000] ACPI Warning
> -klog            00126: (tbfadt-0460): Optional field "Gpe1Block" has zero
> -klog            00127: address or length: 000000000000102C/0 [20080926]
> -klog            00128: 
> -klog            00129: ADVICE: An ACPI table contains Generic Address Structure
> -klog            00130: that has an address that is incorrectly set to zero, or a
> -klog            00131: zero length. This needs to be fixed. 
> -klog            00132: 
> -klog            00133: FAILED [MEDIUM] KlogBiosMtrrIncorrectMask: Test 1, MEDIUM
> -klog            00134: Kernel message: [ 0.000000] mtrr: your BIOS has
> -klog            00135: configured an incorrect mask, fixing it.
> -klog            00136: 
> -klog            00137: ADVICE: The Memory Type Range Registers (MTRRs) which
> -klog            00138: define memory caching policy are misconfigued by the
> -klog            00139: BIOS. In this case, the mask is incorrectly set and the
> -klog            00140: kernel has detected this and worked around the firmware
> -klog            00141: bug.
> -klog            00142: 
> -klog            00143: FAILED [CRITICAL] KlogBiosCpuMtrrMisconfigured: Test 1,
> -klog            00144: CRITICAL Kernel message: [ 0.000000] WARNING: BIOS bug:
> -klog            00145: CPU MTRRs don't cover all of memory, losing 1408MB of
> -klog            00146: RAM.
> -klog            00147: 
> -klog            00148: ADVICE: The Memory Type Range Registers (MTRRs) which
> -klog            00149: define memory caching policy are misconfigued by the BIOS
> -klog            00150: and don't appear to cover all available physical memory.
> -klog            00151: The kernel has detected this and has reduced the amount
> -klog            00152: of memory available to be safe. Either check that the
> -klog            00153: BIOS memory caching options are set correctly or contact
> -klog            00154: your BIOS vendor to get this fixed.
> -klog            00155: 
> -klog            00156: FAILED [HIGH] KlogAcpiUnknownAmlOpcode: Test 1, HIGH
> -klog            00157: Kernel message: [ 0.022719] ACPI Error: Found unknown
> -klog            00158: opcode 0xFD at AML address f7ffe14c offset 0xE8, ignoring
> -klog            00159: (20110112/psloop-141)
> -klog            00160: 
> -klog            00161: ADVICE: ACPI execution run time error: The ACPI
> -klog            00162: interpreter has reached an opcode that is unknown, this
> -klog            00163: normally is a bug in the underlying AML code either
> -klog            00164: because of badly written AML code or the compiler has
> -klog            00165: produced code that is incorrect or the ACPI interpreter
> -klog            00166: does not support this valid opcode. 
> -klog            00167: 
> -klog            00168: FAILED [CRITICAL] KlogAcpiDetectedUnsupportedOpCode: Test
> -klog            00169: 1, CRITICAL Kernel message: [ 0.025463] ACPI Warning:
> -klog            00170: Detected an unsupported executable opcode at module-level
> -klog            00171: : [0x007B] at table offset 0x00C3 (20110112/psloop-526)
> -klog            00172: 
> -klog            00173: ADVICE: An illegal AML opcode has been found and is
> -klog            00174: ignored. This indicates either badly compiled code or
> -klog            00175: opcode corruption in the DSDT or SSDT tables or a bug in
> -klog            00176: the ACPI execution engine. Recommend disassembing using
> -klog            00177: iasl to find any offending code.
> -klog            00178: 
> -klog            00179: FAILED [HIGH] KlogAcpiObjectAlreadyExists: Test 1, HIGH
> -klog            00180: Kernel message: [ 0.034090] ACPI Error: Method parse
> -klog            00181: /execution failed [_SB_.PCI0._OSC] (Node ee025630),
> -klog            00182: AE_ALREADY_EXISTS (20110112/psparse-536)
> -klog            00183: 
> -klog            00184: ADVICE: This is a bug picked up by the kernel, but as yet
> -klog            00185: , the firmware test suite has no diagnostic advice for
> -klog            00186: this particular problem.
> -klog            00187: 
> -klog            00188: FAILED [HIGH] KlogAcpiFirmwareError: Test 1, HIGH Kernel
> -klog            00189: message: [ 0.040119] [Firmware Bug]: the BIOS has
> -klog            00190: corrupted hw-PMU resources (MSR 186 is 400000)
> -klog            00191: 
> -klog            00192: ADVICE: The kernel has detected a Firmware bug in the
> -klog            00193: BIOS or ACPI which needs investigating and fixing.
> -klog            00194: 
> -klog            00195: FAILED [CRITICAL] KlogAcpiDetectedUnsupportedOpCode: Test
> -klog            00196: 1, CRITICAL Kernel message: [ 0.042222] ACPI Warning:
> -klog            00197: Detected an unsupported executable opcode at module-level
> -klog            00198: : [0x0070] at table offset 0x2366 (20100121/psloop-526)
> -klog            00199: 
> -klog            00200: ADVICE: An illegal AML opcode has been found and is
> -klog            00201: ignored. This indicates either badly compiled code or
> -klog            00202: opcode corruption in the DSDT or SSDT tables or a bug in
> -klog            00203: the ACPI execution engine. Recommend disassembing using
> -klog            00204: iasl to find any offending code.
> -klog            00205: 
> -klog            00206: Found 18 unique errors in kernel log.
> -klog            00207: 
> -klog            00208: =========================================================
> -klog            00209: 0 passed, 18 failed, 0 warning, 0 aborted, 0 skipped, 0
> -klog            00210: info only.
> -klog            00211: =========================================================
> +klog            00016: klog: Scan kernel log for errors and warnings.
> +klog            00017: ---------------------------------------------------------
> +klog            00018: Test 1 of 1: Kernel log error check.
> +klog            00019: FAILED [HIGH] KlogAcpiMultipleApicMadtFound: Test 1, HIGH
> +klog            00020: Kernel message: [ 0.000000] ACPI: BIOS bug: multiple APIC
> +klog            00021: /MADT found, using 0
> +klog            00022: 
> +klog            00023: ADVICE: The kernel has detected more than one ACPI
> +klog            00024: Multiple APIC Description Table (MADT) (these tables have
> +klog            00025: the "APIC" signature). There should only be one MADT and
> +klog            00026: the kernel will by default select the first one. However,
> +klog            00027: one can override this and select the Nth MADT using
> +klog            00028: acpi_apic_instance=N.
> +klog            00029: 
> +klog            00030: FAILED [HIGH] KlogAcpi32Bit64BitAddressMismatch: Test 1,
> +klog            00031: HIGH Kernel message: [ 0.000000] ACPI Error: 32/64X
> +klog            00032: address mismatch in Gpe0Block: 00008018/0000000000008028,
> +klog            00033: using 32 (20090903/tbfadt-427)
> +klog            00034: 
> +klog            00035: ADVICE: The FADT table contains a mismatch between a 32
> +klog            00036: bit pointer and a 64 bit Generic Address pointer. Because
> +klog            00037: these pointers are different, it suggests either one of
> +klog            00038: them is incorrect. If a non-null 32 bit pointer exists,
> +klog            00039: then the kernel will opt for this in preference to the 64
> +klog            00040: bit pointer even though this is not in accordance to the
> +klog            00041: ACPI specification.
> +klog            00042: 
> +klog            00043: FAILED [CRITICAL] KlogAcpiValidRsdpNotFound: Test 1,
> +klog            00044: CRITICAL Kernel message: [ 0.000000] ACPI Error: A valid
> +klog            00045: RSDP was not found (20090903/tbxfroot-219)
> +klog            00046: 
> +klog            00047: ADVICE: An ACPI compatible system must provide an RSDP
> +klog            00048: (Root System Description Pointer). This structure
> +klog            00049: provides the physical address of the RSDT and XSDT. Since
> +klog            00050: this could not be found, the ACPI driver has had to
> +klog            00051: disable ACPI support.
> +klog            00052: 
> +klog            00053: FAILED [HIGH] KlogAcpiTwoFacs: Test 1, HIGH Kernel
> +klog            00054: message: [ 0.000000] ACPI Warning: 32/64 FACS address
> +klog            00055: mismatch in FADT - two FACS tables! (20090903/tbfadt-369)
> +klog            00056: 
> +klog            00057: ADVICE: The FADT table contains a mismatch between the 32
> +klog            00058: bit pointer (FIRMWARE_CTRL) and 64 bit pointer
> +klog            00059: (X_FIRMWARE_CTRL) pointer to the FACS table. Section
> +klog            00060: 5.2.9 of version 4.0a of the ACPI specification states
> +klog            00061: that X_FIRMWARE_CTRL should be zero if FIRMWARE_CTRL is
> +klog            00062: defined, or FIRMWARE_CTRL should be zero if
> +klog            00063: X_FIRMWARE_CTRL is zero. With two different pointers
> +klog            00064: defined, the kernel has to make a choice, and opts for
> +klog            00065: the 32 bit pointer. Because these pointers are different,
> +klog            00066: it suggests either one of them is incorrect, or different
> +klog            00067: 32 bit and 64 bit FACS tables are present in your system,
> +klog            00068: which is NOT complaint with the ACPI specification. The
> +klog            00069: kernel has to make a choice and opts for the 32 bit
> +klog            00070: FIRMWARE_CTRL.
> +klog            00071: 
> +klog            00072: FAILED [HIGH] KlogAcpi32Bit64BitAddressMismatchInFadt:
> +klog            00073: Test 1, HIGH Kernel message: [ 0.000000] ACPI Warning: 32
> +klog            00074: /64X FACS address mismatch in FADT - DEF2DF40
> +klog            00075: /00000000DEF30D40, using 32 (20090903/tbfadt-486)
> +klog            00076: 
> +klog            00077: ADVICE: The FADT table contains Generic Address Structure
> +klog            00078: that has a mismatch between the 32 bit and 64 bit
> +klog            00079: versions of an address. This should be fixed so there are
> +klog            00080: no mismatches. 
> +klog            00081: 
> +klog            00082: FAILED [HIGH] KlogAcpi32Bit64BitAddressMismatchInFadt:
> +klog            00083: Test 1, HIGH Kernel message: [ 0.000000] ACPI Warning: 32
> +klog            00084: /64X length mismatch in Gpe1Block: 0/32 20090521
> +klog            00085: tbfadt-527
> +klog            00086: 
> +klog            00087: ADVICE: The FADT table contains Generic Address Structure
> +klog            00088: that has a mismatch between the 32 bit and 64 bit
> +klog            00089: versions of an address. This should be fixed so there are
> +klog            00090: no mismatches. 
> +klog            00091: 
> +klog            00092: FAILED [HIGH] KlogAcpiBadAmlCode: Test 1, HIGH Kernel
> +klog            00093: message: [ 0.000000] ACPI Warning: BIOS XSDT has NULL
> +klog            00094: entry, using RSDT (20110112/tbutils-663)
> +klog            00095: 
> +klog            00096: ADVICE: ACPI AML intepreter has found some non-conforming
> +klog            00097: AML code. This should be investigated and fixed.
> +klog            00098: 
> +klog            00099: FAILED [HIGH] KlogAcpiFadtInvalidLength: Test 1, HIGH
> +klog            00100: Kernel message: [ 0.000000] ACPI Warning: Invalid length
> +klog            00101: for Pm1aControlBlock: 32, using default 16 (20090903
> +klog            00102: /tbfadt-607)
> +klog            00103: 
> +klog            00104: ADVICE: This item in the FADT is the incorrect length.
> +klog            00105: Should be corrected.
> +klog            00106: 
> +klog            00107: FAILED [HIGH] KlogAcpiOptionalFieldZeroAddressOrLength:
> +klog            00108: Test 1, HIGH Kernel message: [ 0.000000] ACPI Warning:
> +klog            00109: Optional field Gpe1Block has zero address or length:
> +klog            00110: 000000000000102C/0 20090521 tbfadt-558
> +klog            00111: 
> +klog            00112: ADVICE: An ACPI table contains Generic Address Structure
> +klog            00113: that has an address that is incorrectly set to zero, or a
> +klog            00114: zero length. This needs to be fixed. 
> +klog            00115: 
> +klog            00116: FAILED [HIGH] KlogAcpiOptionalFieldZeroAddressOrLength:
> +klog            00117: Test 1, HIGH Kernel message: [ 0.000000] ACPI Warning:
> +klog            00118: Optional field Pm2ControlBlock has zero address or length
> +klog            00119: : 0000000000000000/1 20090521 tbfadt-558
> +klog            00120: 
> +klog            00121: ADVICE: An ACPI table contains Generic Address Structure
> +klog            00122: that has an address that is incorrectly set to zero, or a
> +klog            00123: zero length. This needs to be fixed. 
> +klog            00124: 
> +klog            00125: FAILED [HIGH] KlogAcpiOptionalFieldZeroAddressOrLength:
> +klog            00126: Test 1, HIGH Kernel message: [ 0.000000] ACPI Warning
> +klog            00127: (tbfadt-0460): Optional field "Gpe1Block" has zero
> +klog            00128: address or length: 000000000000102C/0 [20080926]
> +klog            00129: 
> +klog            00130: ADVICE: An ACPI table contains Generic Address Structure
> +klog            00131: that has an address that is incorrectly set to zero, or a
> +klog            00132: zero length. This needs to be fixed. 
> +klog            00133: 
> +klog            00134: FAILED [MEDIUM] KlogBiosMtrrIncorrectMask: Test 1, MEDIUM
> +klog            00135: Kernel message: [ 0.000000] mtrr: your BIOS has
> +klog            00136: configured an incorrect mask, fixing it.
> +klog            00137: 
> +klog            00138: ADVICE: The Memory Type Range Registers (MTRRs) which
> +klog            00139: define memory caching policy are misconfigued by the
> +klog            00140: BIOS. In this case, the mask is incorrectly set and the
> +klog            00141: kernel has detected this and worked around the firmware
> +klog            00142: bug.
> +klog            00143: 
> +klog            00144: FAILED [CRITICAL] KlogBiosCpuMtrrMisconfigured: Test 1,
> +klog            00145: CRITICAL Kernel message: [ 0.000000] WARNING: BIOS bug:
> +klog            00146: CPU MTRRs don't cover all of memory, losing 1408MB of
> +klog            00147: RAM.
> +klog            00148: 
> +klog            00149: ADVICE: The Memory Type Range Registers (MTRRs) which
> +klog            00150: define memory caching policy are misconfigued by the BIOS
> +klog            00151: and don't appear to cover all available physical memory.
> +klog            00152: The kernel has detected this and has reduced the amount
> +klog            00153: of memory available to be safe. Either check that the
> +klog            00154: BIOS memory caching options are set correctly or contact
> +klog            00155: your BIOS vendor to get this fixed.
> +klog            00156: 
> +klog            00157: FAILED [HIGH] KlogAcpiUnknownAmlOpcode: Test 1, HIGH
> +klog            00158: Kernel message: [ 0.022719] ACPI Error: Found unknown
> +klog            00159: opcode 0xFD at AML address f7ffe14c offset 0xE8, ignoring
> +klog            00160: (20110112/psloop-141)
> +klog            00161: 
> +klog            00162: ADVICE: ACPI execution run time error: The ACPI
> +klog            00163: interpreter has reached an opcode that is unknown, this
> +klog            00164: normally is a bug in the underlying AML code either
> +klog            00165: because of badly written AML code or the compiler has
> +klog            00166: produced code that is incorrect or the ACPI interpreter
> +klog            00167: does not support this valid opcode. 
> +klog            00168: 
> +klog            00169: FAILED [CRITICAL] KlogAcpiDetectedUnsupportedOpCode: Test
> +klog            00170: 1, CRITICAL Kernel message: [ 0.025463] ACPI Warning:
> +klog            00171: Detected an unsupported executable opcode at module-level
> +klog            00172: : [0x007B] at table offset 0x00C3 (20110112/psloop-526)
> +klog            00173: 
> +klog            00174: ADVICE: An illegal AML opcode has been found and is
> +klog            00175: ignored. This indicates either badly compiled code or
> +klog            00176: opcode corruption in the DSDT or SSDT tables or a bug in
> +klog            00177: the ACPI execution engine. Recommend disassembing using
> +klog            00178: iasl to find any offending code.
> +klog            00179: 
> +klog            00180: FAILED [HIGH] KlogAcpiObjectAlreadyExists: Test 1, HIGH
> +klog            00181: Kernel message: [ 0.034090] ACPI Error: Method parse
> +klog            00182: /execution failed [_SB_.PCI0._OSC] (Node ee025630),
> +klog            00183: AE_ALREADY_EXISTS (20110112/psparse-536)
> +klog            00184: 
> +klog            00185: ADVICE: This is a bug picked up by the kernel, but as yet
> +klog            00186: , the firmware test suite has no diagnostic advice for
> +klog            00187: this particular problem.
> +klog            00188: 
> +klog            00189: FAILED [HIGH] KlogAcpiFirmwareError: Test 1, HIGH Kernel
> +klog            00190: message: [ 0.040119] [Firmware Bug]: the BIOS has
> +klog            00191: corrupted hw-PMU resources (MSR 186 is 400000)
> +klog            00192: 
> +klog            00193: ADVICE: The kernel has detected a Firmware bug in the
> +klog            00194: BIOS or ACPI which needs investigating and fixing.
> +klog            00195: 
> +klog            00196: FAILED [CRITICAL] KlogAcpiDetectedUnsupportedOpCode: Test
> +klog            00197: 1, CRITICAL Kernel message: [ 0.042222] ACPI Warning:
> +klog            00198: Detected an unsupported executable opcode at module-level
> +klog            00199: : [0x0070] at table offset 0x2366 (20100121/psloop-526)
> +klog            00200: 
> +klog            00201: ADVICE: An illegal AML opcode has been found and is
> +klog            00202: ignored. This indicates either badly compiled code or
> +klog            00203: opcode corruption in the DSDT or SSDT tables or a bug in
> +klog            00204: the ACPI execution engine. Recommend disassembing using
> +klog            00205: iasl to find any offending code.
> +klog            00206: 
> +klog            00207: Found 18 unique errors in kernel log.
> +klog            00208: 
> +klog            00209: =========================================================
> +klog            00210: 0 passed, 18 failed, 0 warning, 0 aborted, 0 skipped, 0
> +klog            00211: info only.
> +klog            00212: =========================================================
> diff --git a/fwts-test/arg-log-format-0001/test-0001.sh b/fwts-test/arg-log-format-0001/test-0001.sh
> index ac536c4..d89c7b9 100755
> --- a/fwts-test/arg-log-format-0001/test-0001.sh
> +++ b/fwts-test/arg-log-format-0001/test-0001.sh
> @@ -6,11 +6,11 @@ TMPLOG=$TMP/klog.log.$$
>  TMPLOG_ORIG=$TMP/klog-0001.log.$$
>  TODAY=`date +%d/%m/%y`
>  
> -$FWTS -w 80 --klog=klog.txt --log-format="%owner (%line) <%date> %field %level: " klog - | grep "^klog" > $TMPLOG
> +$FWTS -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-log-format-0001/klog.txt --log-format="%owner (%line) <%date> %field %level: " klog - | grep "^klog" > $TMPLOG
>  #
>  #  Need to adjust reference log to today's date
>  #
> -sed sx16\/05\/12x${TODAY}x < klog-0001.log > $TMPLOG_ORIG
> +sed sx10\/02\/14x${TODAY}x < $FWTSTESTDIR/arg-log-format-0001/klog-0001.log > $TMPLOG_ORIG
>  diff $TMPLOG $TMPLOG_ORIG >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
> diff --git a/fwts-test/arg-log-format-0001/test-0002.sh b/fwts-test/arg-log-format-0001/test-0002.sh
> index 99f2e87..92c431d 100755
> --- a/fwts-test/arg-log-format-0001/test-0002.sh
> +++ b/fwts-test/arg-log-format-0001/test-0002.sh
> @@ -4,8 +4,8 @@ TEST="Test --log-format, %owner field"
>  NAME=test-0002.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS -w 80 --klog=klog.txt --log-format="%owner: " klog - | grep "^klog" > $TMPLOG
> -diff $TMPLOG klog-0002.log >> $FAILURE_LOG
> +$FWTS -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-log-format-0001/klog.txt --log-format="%owner: " klog - | grep "^klog" > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-log-format-0001/klog-0002.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-log-format-0001/test-0003.sh b/fwts-test/arg-log-format-0001/test-0003.sh
> index 5aa6825..1589325 100755
> --- a/fwts-test/arg-log-format-0001/test-0003.sh
> +++ b/fwts-test/arg-log-format-0001/test-0003.sh
> @@ -5,8 +5,8 @@ NAME=test-0003.sh
>  TMPLOG=$TMP/klog.log.$$
>  TODAY=`date +%d/%m/%y`
>  
> -$FWTS -w 80 --klog=klog.txt --log-format="%owner %line: " klog - | grep "^klog" | sed sx12\/10\/11x${TODAY}x > $TMPLOG
> -diff $TMPLOG klog-0003.log >> $FAILURE_LOG
> +$FWTS -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-log-format-0001/klog.txt --log-format="%owner %line: " klog - | grep "^klog" | sed sx12\/10\/11x${TODAY}x > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-log-format-0001/klog-0003.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-log-format-0001/test-0004.sh b/fwts-test/arg-log-format-0001/test-0004.sh
> index 23e7d2e..bebf252 100755
> --- a/fwts-test/arg-log-format-0001/test-0004.sh
> +++ b/fwts-test/arg-log-format-0001/test-0004.sh
> @@ -10,8 +10,8 @@ TODAY=`date +%d/%m/%y`
>  #
>  #  Need to adjust reference log to today's date
>  #
> -$FWTS -w 80 --klog=klog.txt --log-format="%owner %date %%level: " klog - | grep "^klog" > $TMPLOG
> -sed sx10\/10\/11x${TODAY}x < klog-0004.log > $TMPLOG_ORIG
> +$FWTS -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-log-format-0001/klog.txt --log-format="%owner %date %%level: " klog - | grep "^klog" > $TMPLOG
> +sed sx10\/10\/11x${TODAY}x < $FWTSTESTDIR/arg-log-format-0001/klog-0004.log > $TMPLOG_ORIG
>  diff $TMPLOG $TMPLOG_ORIG >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
> diff --git a/fwts-test/arg-quiet-0001/test-0001.sh b/fwts-test/arg-quiet-0001/test-0001.sh
> index 270be2e..5a449d6 100755
> --- a/fwts-test/arg-quiet-0001/test-0001.sh
> +++ b/fwts-test/arg-quiet-0001/test-0001.sh
> @@ -4,7 +4,7 @@ TEST="Test --quiet option"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --quiet -w 80 --klog=klog.txt klog -r /dev/null > $TMPLOG
> +$FWTS --quiet -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-quiet-0001/klog.txt klog -r /dev/null > $TMPLOG
>  diff $TMPLOG /dev/null >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
> diff --git a/fwts-test/arg-quiet-0001/test-0002.sh b/fwts-test/arg-quiet-0001/test-0002.sh
> index 627d9a0..6e55974 100755
> --- a/fwts-test/arg-quiet-0001/test-0002.sh
> +++ b/fwts-test/arg-quiet-0001/test-0002.sh
> @@ -4,7 +4,7 @@ TEST="Test -q option"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS -q -w 80 --klog=klog.txt klog -r /dev/null > $TMPLOG
> +$FWTS -q -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-quiet-0001/klog.txt klog -r /dev/null > $TMPLOG
>  diff $TMPLOG /dev/null >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
> diff --git a/fwts-test/arg-results-0001/test-0001.sh b/fwts-test/arg-results-0001/test-0001.sh
> index 607bb66..c258c95 100755
> --- a/fwts-test/arg-results-0001/test-0001.sh
> +++ b/fwts-test/arg-results-0001/test-0001.sh
> @@ -4,9 +4,9 @@ TEST="Test --results-output option"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/results_$$.log
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog --results-output=$TMPLOG >& /dev/null
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-results-0001/klog.txt klog --results-output=$TMPLOG >& /dev/null
>  grep "^[0-9]*[ ]*klog" $TMPLOG | cut -c7- > $TMPLOG.filtered
> -diff $TMPLOG.filtered results.log >> $FAILURE_LOG
> +diff $TMPLOG.filtered $FWTSTESTDIR/arg-results-0001/results.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-results-0001/test-0002.sh b/fwts-test/arg-results-0001/test-0002.sh
> index f067d91..b7e6ab0 100755
> --- a/fwts-test/arg-results-0001/test-0002.sh
> +++ b/fwts-test/arg-results-0001/test-0002.sh
> @@ -4,9 +4,9 @@ TEST="Test -r option"
>  NAME=test-0002.sh
>  TMPLOG=$TMP/results_$$.log
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog -r $TMPLOG >& /dev/null
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-results-0001/klog.txt klog -r $TMPLOG >& /dev/null
>  grep "^[0-9]*[ ]*klog" $TMPLOG | cut -c7- > $TMPLOG.filtered
> -diff $TMPLOG.filtered results.log >> $FAILURE_LOG
> +diff $TMPLOG.filtered $FWTSTESTDIR/arg-results-0001/results.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-results-0001/test-0003.sh b/fwts-test/arg-results-0001/test-0003.sh
> index 4ba0a84..85ac06b 100755
> --- a/fwts-test/arg-results-0001/test-0003.sh
> +++ b/fwts-test/arg-results-0001/test-0003.sh
> @@ -4,8 +4,8 @@ TEST="Test --results-output stdout option"
>  NAME=test-0003.sh
>  TMPLOG=$TMP/results_$$.log
>  
> -($FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog --results-output=stdout | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG ) >& /dev/null
> -diff $TMPLOG results.log >> $FAILURE_LOG
> +($FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-results-0001/klog.txt klog --results-output=stdout | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG ) >& /dev/null
> +diff $TMPLOG $FWTSTESTDIR/arg-results-0001/results.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-results-0001/test-0004.sh b/fwts-test/arg-results-0001/test-0004.sh
> index 9e19460..01f87f3 100755
> --- a/fwts-test/arg-results-0001/test-0004.sh
> +++ b/fwts-test/arg-results-0001/test-0004.sh
> @@ -4,8 +4,8 @@ TEST="Test -r stdout option"
>  NAME=test-0004.sh
>  TMPLOG=$TMP/results_$$.log
>  
> -($FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog -r stdout | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG ) >& /dev/null
> -diff $TMPLOG results.log >> $FAILURE_LOG
> +($FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-results-0001/klog.txt klog -r stdout | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG ) >& /dev/null
> +diff $TMPLOG $FWTSTESTDIR/arg-results-0001/results.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-results-0001/test-0005.sh b/fwts-test/arg-results-0001/test-0005.sh
> index 9ccba1a..443f419 100755
> --- a/fwts-test/arg-results-0001/test-0005.sh
> +++ b/fwts-test/arg-results-0001/test-0005.sh
> @@ -4,10 +4,10 @@ TEST="Test --results-output option (append)"
>  NAME=test-0005.sh
>  TMPLOG=$TMP/results_$$.log
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog --results-output=$TMPLOG >& /dev/null
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog --results-output=$TMPLOG >& /dev/null
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-results-0001/klog.txt klog --results-output=$TMPLOG >& /dev/null
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-results-0001/klog.txt klog --results-output=$TMPLOG >& /dev/null
>  grep "^[0-9]*[ ]*klog" $TMPLOG | cut -c7- > $TMPLOG.filtered
> -diff $TMPLOG.filtered results-0005.log >> $FAILURE_LOG
> +diff $TMPLOG.filtered $FWTSTESTDIR/arg-results-0001/results-0005.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-results-0001/test-0006.sh b/fwts-test/arg-results-0001/test-0006.sh
> index bfb3d6c..36bc79b 100755
> --- a/fwts-test/arg-results-0001/test-0006.sh
> +++ b/fwts-test/arg-results-0001/test-0006.sh
> @@ -4,10 +4,10 @@ TEST="Test -r option (append)"
>  NAME=test-0006.sh
>  TMPLOG=$TMP/results_$$.log
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog -r $TMPLOG >& /dev/null
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog -r $TMPLOG >& /dev/null
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-results-0001/klog.txt klog -r $TMPLOG >& /dev/null
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-results-0001/klog.txt klog -r $TMPLOG >& /dev/null
>  grep "^[0-9]*[ ]*klog" $TMPLOG | cut -c7- > $TMPLOG.filtered
> -diff $TMPLOG.filtered results-0005.log >> $FAILURE_LOG
> +diff $TMPLOG.filtered $FWTSTESTDIR/arg-results-0001/results-0005.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-results-no-separators-0001/test-0001.sh b/fwts-test/arg-results-no-separators-0001/test-0001.sh
> index fb9b7f3..cf424ee 100755
> --- a/fwts-test/arg-results-no-separators-0001/test-0001.sh
> +++ b/fwts-test/arg-results-no-separators-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test --results-no-separators option"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --results-no-separators --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --results-no-separators --klog=$FWTSTESTDIR/arg-results-no-separators-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-results-no-separators-0001/klog-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-show-progress-dialog-0001/test-0001.sh b/fwts-test/arg-show-progress-dialog-0001/test-0001.sh
> index 74b654d..8349e2b 100755
> --- a/fwts-test/arg-show-progress-dialog-0001/test-0001.sh
> +++ b/fwts-test/arg-show-progress-dialog-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test --show-progress-dialog option"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/progress.log.$$
>  
> -$FWTS -w 80 --show-progress-dialog --klog=klog.txt oops klog version > $TMPLOG
> -diff $TMPLOG progress-0001.log >> $FAILURE_LOG
> +$FWTS -w 80 --show-progress-dialog -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-show-progress-dialog-0001/klog.txt oops klog version > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-show-progress-dialog-0001/progress-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-show-progress-dialog-0001/test-0002.sh b/fwts-test/arg-show-progress-dialog-0001/test-0002.sh
> index 22b7b5d..08dd842 100755
> --- a/fwts-test/arg-show-progress-dialog-0001/test-0002.sh
> +++ b/fwts-test/arg-show-progress-dialog-0001/test-0002.sh
> @@ -4,8 +4,8 @@ TEST="Test -D option"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/progress.log.$$
>  
> -$FWTS -w 80 -D --klog=klog.txt oops klog version > $TMPLOG
> -diff $TMPLOG progress-0001.log >> $FAILURE_LOG
> +$FWTS -w 80 -D -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-show-progress-dialog-0001/klog.txt oops klog version > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-show-progress-dialog-0001/progress-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-show-tests-0001/test-0001.sh b/fwts-test/arg-show-tests-0001/test-0001.sh
> index 4a293d2..9c81be7 100755
> --- a/fwts-test/arg-show-tests-0001/test-0001.sh
> +++ b/fwts-test/arg-show-tests-0001/test-0001.sh
> @@ -6,7 +6,7 @@ TMPLOG=$TMP/arg-show-tests.log.$$
>  
>  stty cols 80
>  $FWTS -s > $TMPLOG
> -diff $TMPLOG arg-show-tests-0001.log >> $FAILURE_LOG
> +diff $TMPLOG $FWTSTESTDIR/arg-show-tests-0001/arg-show-tests-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-show-tests-0001/test-0002.sh b/fwts-test/arg-show-tests-0001/test-0002.sh
> index 75c3559..e3f6c17 100755
> --- a/fwts-test/arg-show-tests-0001/test-0002.sh
> +++ b/fwts-test/arg-show-tests-0001/test-0002.sh
> @@ -6,7 +6,7 @@ TMPLOG=$TMP/arg-show-tests.log.$$
>  
>  stty cols 80
>  $FWTS -s > $TMPLOG
> -diff $TMPLOG arg-show-tests-0001.log >> $FAILURE_LOG
> +diff $TMPLOG $FWTSTESTDIR/arg-show-tests-0001/arg-show-tests-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-show-tests-full-0001/test-0001.sh b/fwts-test/arg-show-tests-full-0001/test-0001.sh
> index 08dfe07..4858bee 100755
> --- a/fwts-test/arg-show-tests-full-0001/test-0001.sh
> +++ b/fwts-test/arg-show-tests-full-0001/test-0001.sh
> @@ -6,7 +6,7 @@ TMPLOG=$TMP/arg-show-tests-full.log.$$
>  
>  stty cols 80
>  $FWTS --show-tests-full > $TMPLOG
> -diff $TMPLOG arg-show-tests-full-0001.log >> $FAILURE_LOG
> +diff $TMPLOG $FWTSTESTDIR/arg-show-tests-full-0001/arg-show-tests-full-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-table-path-0001/test-0001.sh b/fwts-test/arg-table-path-0001/test-0001.sh
> index cad4af7..77eb04a 100755
> --- a/fwts-test/arg-table-path-0001/test-0001.sh
> +++ b/fwts-test/arg-table-path-0001/test-0001.sh
> @@ -4,7 +4,7 @@ TEST="Test --table-path to load dumped tables produced by acpixtract"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/acpidump.log.$$
>  SORTED=$TMP/acpidump.log.sorted
> -HERE=`pwd`
> +HERE=$FWTSTESTDIR/arg-table-path-0001
>  
>  #
>  # Unfortunately we can pull in the tables in different order depending
> @@ -13,7 +13,7 @@ HERE=`pwd`
>  # the output before we diff.
>  #
>  $FWTS --log-format="%line %owner " -w 80 --table-path=$HERE acpidump - | grep "^[0-9]*[ ]*acpidump" | cut -c7- | sort | uniq > $TMPLOG
> -sort acpidump-0001.log > $SORTED
> +sort $HERE/acpidump-0001.log > $SORTED
>  diff $TMPLOG $SORTED >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
> diff --git a/fwts-test/arg-table-path-0001/test-0002.sh b/fwts-test/arg-table-path-0001/test-0002.sh
> index d9fb658..84db755 100755
> --- a/fwts-test/arg-table-path-0001/test-0002.sh
> +++ b/fwts-test/arg-table-path-0001/test-0002.sh
> @@ -4,7 +4,7 @@ TEST="Test -T to load dumped tables produced by acpixtract"
>  NAME=test-0002.sh
>  TMPLOG=$TMP/acpidump.log.$$
>  SORTED=$TMP/acpidump.log.sorted
> -HERE=`pwd`
> +HERE=$FWTSTESTDIR/arg-table-path-0001
>  
>  #
>  # Unfortunately we can pull in the tables in different order depending
> @@ -13,7 +13,7 @@ HERE=`pwd`
>  # the output before we diff.
>  #
>  $FWTS --log-format="%line %owner " -w 80 -t $HERE acpidump - | grep "^[0-9]*[ ]*acpidump" | cut -c7- | sort | uniq > $TMPLOG
> -sort acpidump-0001.log > $SORTED
> +sort $HERE/acpidump-0001.log > $SORTED
>  diff $TMPLOG $SORTED >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
> diff --git a/fwts-test/arg-width-0001/test-0001.sh b/fwts-test/arg-width-0001/test-0001.sh
> index a33e5d4..57b1410 100755
> --- a/fwts-test/arg-width-0001/test-0001.sh
> +++ b/fwts-test/arg-width-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test -w 80"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-width-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-width-0001/klog-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-width-0001/test-0002.sh b/fwts-test/arg-width-0001/test-0002.sh
> index 1f52f28..d7392f9 100755
> --- a/fwts-test/arg-width-0001/test-0002.sh
> +++ b/fwts-test/arg-width-0001/test-0002.sh
> @@ -4,8 +4,8 @@ TEST="Test -w 90"
>  NAME=test-0002.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 90 --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7-  > $TMPLOG
> -diff $TMPLOG klog-0002.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 90 -j $FWTSTESTDIR/../data  --klog=$FWTSTESTDIR/arg-width-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7-  > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-width-0001/klog-0002.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-width-0001/test-0003.sh b/fwts-test/arg-width-0001/test-0003.sh
> index 8d67f02..76eef38 100755
> --- a/fwts-test/arg-width-0001/test-0003.sh
> +++ b/fwts-test/arg-width-0001/test-0003.sh
> @@ -4,8 +4,8 @@ TEST="Test -w 100"
>  NAME=test-0003.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 100 --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0003.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 100 -j $FWTSTESTDIR/../data  --klog=$FWTSTESTDIR/arg-width-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-width-0001/klog-0003.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-width-0001/test-0004.sh b/fwts-test/arg-width-0001/test-0004.sh
> index ddad193..79bc838 100755
> --- a/fwts-test/arg-width-0001/test-0004.sh
> +++ b/fwts-test/arg-width-0001/test-0004.sh
> @@ -4,8 +4,8 @@ TEST="Test -w 1000"
>  NAME=test-0004.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 1000 --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0004.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 1000 -j $FWTSTESTDIR/../data  --klog=$FWTSTESTDIR/arg-width-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-width-0001/klog-0004.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-width-0001/test-0005.sh b/fwts-test/arg-width-0001/test-0005.sh
> index bf1c18e..94e263e 100755
> --- a/fwts-test/arg-width-0001/test-0005.sh
> +++ b/fwts-test/arg-width-0001/test-0005.sh
> @@ -4,8 +4,8 @@ TEST="Test --log-width=80"
>  NAME=test-0005.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " --log-width=80 --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " --log-width=80 -j $FWTSTESTDIR/../data  --klog=$FWTSTESTDIR/arg-width-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-width-0001/klog-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-width-0001/test-0006.sh b/fwts-test/arg-width-0001/test-0006.sh
> index 97864ad..9abd382 100755
> --- a/fwts-test/arg-width-0001/test-0006.sh
> +++ b/fwts-test/arg-width-0001/test-0006.sh
> @@ -4,8 +4,8 @@ TEST="Test --log-width=90"
>  NAME=test-0006.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " --log-width=90 --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0002.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " --log-width=90 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-width-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-width-0001/klog-0002.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-width-0001/test-0007.sh b/fwts-test/arg-width-0001/test-0007.sh
> index c8efa7d..30cf0c6 100755
> --- a/fwts-test/arg-width-0001/test-0007.sh
> +++ b/fwts-test/arg-width-0001/test-0007.sh
> @@ -4,8 +4,8 @@ TEST="Test --log-width=100"
>  NAME=test-0007.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " --log-width=100 --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0003.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " --log-width=100 -j $FWTSTESTDIR/../data  --klog=$FWTSTESTDIR/arg-width-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-width-0001/klog-0003.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/arg-width-0001/test-0008.sh b/fwts-test/arg-width-0001/test-0008.sh
> index 0ae3759..a59e760 100755
> --- a/fwts-test/arg-width-0001/test-0008.sh
> +++ b/fwts-test/arg-width-0001/test-0008.sh
> @@ -4,8 +4,8 @@ TEST="Test --log-width=1000"
>  NAME=test-0008.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " --log-width=1000 --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0004.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " --log-width=1000 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/arg-width-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/arg-width-0001/klog-0004.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/checksum-0001/test-0001.sh b/fwts-test/checksum-0001/test-0001.sh
> index 79dcd73..49e9961 100755
> --- a/fwts-test/checksum-0001/test-0001.sh
> +++ b/fwts-test/checksum-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test checksum against known correct ACPI tables"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/checksum.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 120 --dumpfile=acpidump-0001.log checksum - | grep "^[0-9]*[ ]*checksum" | grep -v RSDP | cut -c7- > $TMPLOG
> -diff $TMPLOG checksum-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 120 --dumpfile=$FWTSTESTDIR/checksum-0001/acpidump-0001.log checksum - | grep "^[0-9]*[ ]*checksum" | grep -v RSDP | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/checksum-0001/checksum-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/checksum-0001/test-0003.sh b/fwts-test/checksum-0001/test-0003.sh
> index 3db119c..62f58b3 100755
> --- a/fwts-test/checksum-0001/test-0003.sh
> +++ b/fwts-test/checksum-0001/test-0003.sh
> @@ -4,8 +4,8 @@ TEST="Test checksum against incorrect ACPI DSDT table"
>  NAME=test-0003.sh
>  TMPLOG=$TMP/checksum.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 120 --dumpfile=acpidump-0003.log checksum - | grep "^[0-9]*[ ]*checksum" | grep -v RSDP | cut -c7- > $TMPLOG
> -diff $TMPLOG checksum-0003.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 120 --dumpfile=$FWTSTESTDIR/checksum-0001/acpidump-0003.log checksum - | grep "^[0-9]*[ ]*checksum" | grep -v RSDP | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/checksum-0001/checksum-0003.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/checksum-0001/test-0004.sh b/fwts-test/checksum-0001/test-0004.sh
> index b7c40be..f3fd350 100755
> --- a/fwts-test/checksum-0001/test-0004.sh
> +++ b/fwts-test/checksum-0001/test-0004.sh
> @@ -4,8 +4,8 @@ TEST="Test checksum against incorrect ACPI DSDT table"
>  NAME=test-0004.sh
>  TMPLOG=$TMP/checksum.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 120 --dumpfile=acpidump-0004.log checksum - | grep "^[0-9]*[ ]*checksum" | grep -v RSDP | cut -c7- > $TMPLOG
> -diff $TMPLOG checksum-0004.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 120 --dumpfile=$FWTSTESTDIR/checksum-0001/acpidump-0004.log checksum - | grep "^[0-9]*[ ]*checksum" | grep -v RSDP | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/checksum-0001/checksum-0004.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/disassemble-0001/test-0001.sh b/fwts-test/disassemble-0001/test-0001.sh
> index 1fe4c32..27de6a0 100755
> --- a/fwts-test/disassemble-0001/test-0001.sh
> +++ b/fwts-test/disassemble-0001/test-0001.sh
> @@ -4,14 +4,14 @@ NAME=test-0001.sh
>  
>  TMPDIR=$TMP/disassemble-aml
>  TMPLOG=$TMP/disassemble-aml.log.$$
> -HERE=`pwd`
> +HERE=$FWTSTESTDIR/disassemble-0001
>  
>  mkdir $TMPDIR
>  $FWTS -w 80 --dumpfile=$HERE/acpidump.log --disassemble-aml=$TMPDIR - > $TMPLOG
>  
>  failed=0
>  TEST="Test --disassemble-aml output to stdout"
> -diff disassemble-aml-0001.log $TMPLOG >> $FAILURE_LOG
> +diff $HERE/disassemble-aml-0001.log $TMPLOG >> $FAILURE_LOG
>  if [ $? -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
>  else
> @@ -26,7 +26,7 @@ do
>  	#  Remove lines that contain a tmp file output name in disassembly
>  	#
>  	grep -v "/tmp/fwts_iasl" $TMPDIR/$I.dsl | grep -v "AML Disassembler version"  > $TMPDIR/$I.dsl.fixed.$$
> -	grep -v "/tmp/fwts_iasl" $I.dsl.orig | grep -v "AML Disassembler version" > $TMPDIR/$I.dsl.orig.fixed.$$
> +	grep -v "/tmp/fwts_iasl" $HERE/$I.dsl.orig | grep -v "AML Disassembler version" > $TMPDIR/$I.dsl.orig.fixed.$$
>  	
>  	diff $TMPDIR/$I.dsl.fixed.$$ $TMPDIR/$I.dsl.orig.fixed.$$
>  	if [ $? -eq 0 ]; then 
> diff --git a/fwts-test/klog-0001/test-0001.sh b/fwts-test/klog-0001/test-0001.sh
> index cca066a..72b7f44 100755
> --- a/fwts-test/klog-0001/test-0001.sh
> +++ b/fwts-test/klog-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test klog against known failure patterns"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/klog-0001/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/klog-0001/klog-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/klog-0001/test-0002.sh b/fwts-test/klog-0001/test-0002.sh
> index ed46cb0..535f87d 100755
> --- a/fwts-test/klog-0001/test-0002.sh
> +++ b/fwts-test/klog-0001/test-0002.sh
> @@ -4,8 +4,8 @@ TEST="Test klog summary table against known failure patterns"
>  NAME=test-0002.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog - | grep summary | sed 's/line: [0-9]*//' | cut -c7- > $TMPLOG
> -grep -v "log line:" klog-0002.log | diff $TMPLOG - >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/klog-0001/klog.txt klog - | grep summary | sed 's/line: [0-9]*//' | cut -c7- > $TMPLOG
> +grep -v "log line:" $FWTSTESTDIR/klog-0001/klog-0002.log | diff $TMPLOG - >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/klog-0001/test-0003.sh b/fwts-test/klog-0001/test-0003.sh
> index b25677d..badcb93 100755
> --- a/fwts-test/klog-0001/test-0003.sh
> +++ b/fwts-test/klog-0001/test-0003.sh
> @@ -4,8 +4,8 @@ TEST="Test klog against known failure rate"
>  NAME=test-0003.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog - | grep "unique errors in kernel log" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0003.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/klog-0001/klog.txt klog - | grep "unique errors in kernel log" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/klog-0001/klog-0003.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/klog-0002/test-0001.sh b/fwts-test/klog-0002/test-0001.sh
> index 134c60d..23251de 100755
> --- a/fwts-test/klog-0002/test-0001.sh
> +++ b/fwts-test/klog-0002/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test klog against known common failure patterns (was the dmesg_common test
>  NAME=test-0001.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/klog-0002/klog.txt klog - | grep "^[0-9]*[ ]*klog" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/klog-0002/klog-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/klog-0002/test-0002.sh b/fwts-test/klog-0002/test-0002.sh
> index 9f057a4..446343e 100755
> --- a/fwts-test/klog-0002/test-0002.sh
> +++ b/fwts-test/klog-0002/test-0002.sh
> @@ -4,8 +4,8 @@ TEST="Test klog against known common failure patterns (was the dmesg_common test
>  NAME=test-0002.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog - | grep summary | sed 's/line: [0-9]*//' | cut -c7-  > $TMPLOG
> -grep -v "log line:" klog-0002.log | diff $TMPLOG - >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/klog-0002/klog.txt klog - | grep summary | sed 's/line: [0-9]*//' | cut -c7-  > $TMPLOG
> +grep -v "log line:" $FWTSTESTDIR/klog-0002/klog-0002.log | diff $TMPLOG - >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/klog-0002/test-0003.sh b/fwts-test/klog-0002/test-0003.sh
> index 3588d29..000d5f6 100755
> --- a/fwts-test/klog-0002/test-0003.sh
> +++ b/fwts-test/klog-0002/test-0003.sh
> @@ -4,8 +4,8 @@ TEST="Test klog against known common failure patterns (was the dmesg_common test
>  NAME=test-0003.sh
>  TMPLOG=$TMP/klog.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=klog.txt klog - | grep "errors in kernel log" | grep "Found" | cut -c7- > $TMPLOG
> -diff $TMPLOG klog-0003.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --klog=$FWTSTESTDIR/klog-0002/klog.txt klog - | grep "errors in kernel log" | grep "Found" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/klog-0002/klog-0003.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/method-0001/test-0001.sh b/fwts-test/method-0001/test-0001.sh
> index f210616..b67c0ec 100755
> --- a/fwts-test/method-0001/test-0001.sh
> +++ b/fwts-test/method-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test method against known correct ACPI tables"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/method.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log method - | grep "^[0-9]*[ ]*method" | cut -c7- > $TMPLOG
> -diff $TMPLOG method-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/method-0001/acpidump-0001.log method - | grep "^[0-9]*[ ]*method" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/method-0001/method-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/oops-0001/test-0001.sh b/fwts-test/oops-0001/test-0001.sh
> index 13318e1..4e80c84 100755
> --- a/fwts-test/oops-0001/test-0001.sh
> +++ b/fwts-test/oops-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test oops against known failure patterns"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/oops.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=oops.txt oops - | grep "^[0-9]*[ ]*oops" | cut -c7- > $TMPLOG
> -diff $TMPLOG oops-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --klog=$FWTSTESTDIR/oops-0001/oops.txt oops - | grep "^[0-9]*[ ]*oops" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/oops-0001/oops-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/oops-0001/test-0002.sh b/fwts-test/oops-0001/test-0002.sh
> index 9b5e1bc..c6b57b0 100755
> --- a/fwts-test/oops-0001/test-0002.sh
> +++ b/fwts-test/oops-0001/test-0002.sh
> @@ -4,8 +4,8 @@ TEST="Test oops summary table against known failure patterns"
>  NAME=test-0002.sh
>  TMPLOG=$TMP/oops.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 400 --klog=oops.txt oops - | grep summary | sed 's/line: [0-9]*//' | cut -c7- > $TMPLOG
> -grep -v "log line:" oops-0002.log | diff $TMPLOG - >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 400 --klog=$FWTSTESTDIR/oops-0001/oops.txt oops - | grep summary | sed 's/line: [0-9]*//' | cut -c7- > $TMPLOG
> +grep -v "log line:" $FWTSTESTDIR/oops-0001/oops-0002.log | diff $TMPLOG - >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/oops-0001/test-0003.sh b/fwts-test/oops-0001/test-0003.sh
> index 8efb02d..eee508e 100755
> --- a/fwts-test/oops-0001/test-0003.sh
> +++ b/fwts-test/oops-0001/test-0003.sh
> @@ -4,8 +4,8 @@ TEST="Test oops against known failure rate"
>  NAME=test-0003.sh
>  TMPLOG=$TMP/oops.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --klog=oops.txt oops - | grep "oopses" | grep -v "summary" | cut -c7- > $TMPLOG
> -diff $TMPLOG oops-0003.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --klog=$FWTSTESTDIR/oops-0001/oops.txt oops - | grep "oopses" | grep -v "summary" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/oops-0001/oops-0003.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/osilinux-0001/test-0001.sh b/fwts-test/osilinux-0001/test-0001.sh
> index 93adeac..d1369d8 100755
> --- a/fwts-test/osilinux-0001/test-0001.sh
> +++ b/fwts-test/osilinux-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test osilinux against known incorrect ACPI tables"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/osilinux.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log osilinux - | grep "^[0-9]*[ ]*osilinux" | cut -c7- > $TMPLOG
> -diff $TMPLOG osilinux-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/osilinux-0001/acpidump-0001.log osilinux - | grep "^[0-9]*[ ]*osilinux" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/osilinux-0001/osilinux-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/osilinux-0001/test-0002.sh b/fwts-test/osilinux-0001/test-0002.sh
> index 4564fa3..b03557d 100755
> --- a/fwts-test/osilinux-0001/test-0002.sh
> +++ b/fwts-test/osilinux-0001/test-0002.sh
> @@ -4,8 +4,8 @@ TEST="Test osilinux against known correct ACPI tables"
>  NAME=test-0002.sh
>  TMPLOG=$TMP/osilinux.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0002.log osilinux - | grep "^[0-9]*[ ]*osilinux" | cut -c7- > $TMPLOG
> -diff $TMPLOG osilinux-0002.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/osilinux-0001/acpidump-0002.log osilinux - | grep "^[0-9]*[ ]*osilinux" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/osilinux-0001/osilinux-0002.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/syntaxcheck-0001/test-0001.sh b/fwts-test/syntaxcheck-0001/test-0001.sh
> index 231e314..6ee730a 100755
> --- a/fwts-test/syntaxcheck-0001/test-0001.sh
> +++ b/fwts-test/syntaxcheck-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test syntaxcheck against known correct ACPI tables"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/syntaxcheck.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log syntaxcheck - | grep "^[0-9]*[ ]*syntaxcheck" | cut -c7- > $TMPLOG
> -diff $TMPLOG syntaxcheck-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 -j $FWTSTESTDIR/../data --dumpfile=$FWTSTESTDIR/syntaxcheck-0001/acpidump-0001.log syntaxcheck - | grep "^[0-9]*[ ]*syntaxcheck" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/syntaxcheck-0001/syntaxcheck-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/wmi-0001/test-0001.sh b/fwts-test/wmi-0001/test-0001.sh
> index 10e97da..74343eb 100755
> --- a/fwts-test/wmi-0001/test-0001.sh
> +++ b/fwts-test/wmi-0001/test-0001.sh
> @@ -4,8 +4,8 @@ TEST="Test wmi against known correct ACPI tables"
>  NAME=test-0001.sh
>  TMPLOG=$TMP/wmi.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0001.log wmi - | grep "^[0-9]*[ ]*wmi" | cut -c7- > $TMPLOG
> -diff $TMPLOG wmi-0001.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/wmi-0001/acpidump-0001.log wmi - | grep "^[0-9]*[ ]*wmi" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/wmi-0001/wmi-0001.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/wmi-0001/test-0002.sh b/fwts-test/wmi-0001/test-0002.sh
> index ec1dbcf..1213991 100755
> --- a/fwts-test/wmi-0001/test-0002.sh
> +++ b/fwts-test/wmi-0001/test-0002.sh
> @@ -4,8 +4,8 @@ TEST="Test wmi against known correct ACPI tables"
>  NAME=test-0002.sh
>  TMPLOG=$TMP/wmi.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0002.log wmi - | grep "^[0-9]*[ ]*wmi" | cut -c7- > $TMPLOG
> -diff $TMPLOG wmi-0002.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/wmi-0001/acpidump-0002.log wmi - | grep "^[0-9]*[ ]*wmi" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/wmi-0001/wmi-0002.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> diff --git a/fwts-test/wmi-0001/test-0003.sh b/fwts-test/wmi-0001/test-0003.sh
> index 8ca1b90..76d8db3 100755
> --- a/fwts-test/wmi-0001/test-0003.sh
> +++ b/fwts-test/wmi-0001/test-0003.sh
> @@ -4,8 +4,8 @@ TEST="Test wmi against known incorrect ACPI tables"
>  NAME=test-0003.sh
>  TMPLOG=$TMP/wmi.log.$$
>  
> -$FWTS --log-format="%line %owner " -w 80 --dumpfile=acpidump-0003.log wmi - | grep "^[0-9]*[ ]*wmi" | cut -c7- > $TMPLOG
> -diff $TMPLOG wmi-0003.log >> $FAILURE_LOG
> +$FWTS --log-format="%line %owner " -w 80 --dumpfile=$FWTSTESTDIR/wmi-0001/acpidump-0003.log wmi - | grep "^[0-9]*[ ]*wmi" | cut -c7- > $TMPLOG
> +diff $TMPLOG $FWTSTESTDIR/wmi-0001/wmi-0003.log >> $FAILURE_LOG
>  ret=$?
>  if [ $ret -eq 0 ]; then 
>  	echo PASSED: $TEST, $NAME
> 

Looks good to me. Thanks Keng-Yu

Acked-by: Colin Ian King <colin.king at canonical.com>



More information about the fwts-devel mailing list