From ab526a6352ab882d20cfaa4853202598ebf95f06 Mon Sep 17 00:00:00 2001 From: Allan Randall Date: Tue, 19 Dec 2006 02:55:36 +0000 Subject: [PATCH] Integrate existing dmapi qa tests into xfs qa infrastructure Merge of master-melb:xfs-cmds:27764a by kenmcd. Dmapi get/set_dmattr --- 142 | 45 +++++++ 142.out | 232 ++++++++++++++++++++++++++++++++ 143 | 45 +++++++ 143.out | 98 ++++++++++++++ 144 | 47 +++++++ 144.out | 246 ++++++++++++++++++++++++++++++++++ 145 | 45 +++++++ 145.out | 36 +++++ 146 | 49 +++++++ 146.out | 320 ++++++++++++++++++++++++++++++++++++++++++++ 147 | 45 +++++++ 147.out | 29 ++++ Makefile | 4 +- common.dmapi | 23 ++++ common.rc | 30 +++-- group | 6 + include/buildmacros | 9 +- 17 files changed, 1296 insertions(+), 13 deletions(-) create mode 100755 142 create mode 100644 142.out create mode 100755 143 create mode 100644 143.out create mode 100755 144 create mode 100644 144.out create mode 100755 145 create mode 100644 145.out create mode 100755 146 create mode 100644 146.out create mode 100755 147 create mode 100644 147.out create mode 100644 common.dmapi diff --git a/142 b/142 new file mode 100755 index 00000000..b0630cdb --- /dev/null +++ b/142 @@ -0,0 +1,45 @@ +#! /bin/sh +# FSQA Test No. 142 +# +# Dmapi get/set_dmattr +# +#----------------------------------------------------------------------- +# Copyright (c) 2006 Silicon Graphics, Inc. All Rights Reserved. +#----------------------------------------------------------------------- +# +# creator +owner=allanr@sgi.com + +seq=`basename $0` +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 15 + +_cleanup() +{ + _cleanup_testdir +} + +# get standard environment, filters and checks +. ./common.rc +. ./common.filter +. ./common.dmapi + +# real QA test starts here +_supported_fs xfs +_supported_os Linux + +_require_scratch +_scratch_mkfs_xfs >/dev/null 2>&1 +_dmapi_scratch_mount + +mkdir -p $SCRATCH_MNT/dmapi + +# run DMAPI test using verbose output +${DMAPI_QASUITE2_DIR}src/test_dmattr -v $DMAPI_LS_TO_COPY_PATH $SCRATCH_MNT + +status=0 +exit diff --git a/142.out b/142.out new file mode 100644 index 00000000..504b4002 --- /dev/null +++ b/142.out @@ -0,0 +1,232 @@ +QA output created by 142 +Attribute tests beginning... +Report: success with set #0. +Report: success with set #1. +Report: success with set #2. +Report: success with set #3. +Report: success with set #4. +Report: success with set #5. +Report: success with set #6. +Report: success with set #7. +Report: success with set #8. +Report: success with set #9. +Report: success with set #10. +Report: success with set #11. +Report: success with set #12. +Report: success with set #13. +Report: success with set #14. +Report: success with set #15. +Report: success with set #16. +Report: success with set #17. +Report: success with set #18. +Report: success with set #19. +Report: success with set #20. +Report: success with set #21. +Report: success with set #22. +Report: success with set #23. +Report: success with set #24. +Report: success with set #25. +Report: success with set #26. +Report: success with set #27. +Report: success with set #28. +Report: success with set #29. +Report: success with set #30. +Report: success with set #31. +Report: success with set #32. +Report: success with set #33. +Report: success with set #34. +Report: success with set #35. +Report: success with set #36. +Report: success with set #37. +Report: success with set #38. +Report: success with set #39. +Report: success with set #40. +Report: success with set #41. +Report: success with set #42. +Report: success with set #43. +Report: success with set #44. +Report: success with set #45. +Report: success with set #46. +Report: success with set #47. +Report: success with set #48. +Report: success with set #49. +Report: success with get #0. (output matches expectation) +Report: success with get #1. (output matches expectation) +Report: success with get #2. (output matches expectation) +Report: success with get #3. (output matches expectation) +Report: success with get #4. (output matches expectation) +Report: success with get #5. (output matches expectation) +Report: success with get #6. (output matches expectation) +Report: success with get #7. (output matches expectation) +Report: success with get #8. (output matches expectation) +Report: success with get #9. (output matches expectation) +Report: success with get #10. (output matches expectation) +Report: success with get #11. (output matches expectation) +Report: success with get #12. (output matches expectation) +Report: success with get #13. (output matches expectation) +Report: success with get #14. (output matches expectation) +Report: success with get #15. (output matches expectation) +Report: success with get #16. (output matches expectation) +Report: success with get #17. (output matches expectation) +Report: success with get #18. (output matches expectation) +Report: success with get #19. (output matches expectation) +Report: success with get #20. (output matches expectation) +Report: success with get #21. (output matches expectation) +Report: success with get #22. (output matches expectation) +Report: success with get #23. (output matches expectation) +Report: success with get #24. (output matches expectation) +Report: success with get #25. (output matches expectation) +Report: success with get #26. (output matches expectation) +Report: success with get #27. (output matches expectation) +Report: success with get #28. (output matches expectation) +Report: success with get #29. (output matches expectation) +Report: success with get #30. (output matches expectation) +Report: success with get #31. (output matches expectation) +Report: success with get #32. (output matches expectation) +Report: success with get #33. (output matches expectation) +Report: success with get #34. (output matches expectation) +Report: success with get #35. (output matches expectation) +Report: success with get #36. (output matches expectation) +Report: success with get #37. (output matches expectation) +Report: success with get #38. (output matches expectation) +Report: success with get #39. (output matches expectation) +Report: success with get #40. (output matches expectation) +Report: success with get #41. (output matches expectation) +Report: success with get #42. (output matches expectation) +Report: success with get #43. (output matches expectation) +Report: success with get #44. (output matches expectation) +Report: success with get #45. (output matches expectation) +Report: success with get #46. (output matches expectation) +Report: success with get #47. (output matches expectation) +Report: success with get #48. (output matches expectation) +Report: success with get #49. (output matches expectation) +Report: Time stamp was correctly unchanged by test 0. +Report: Time stamp was correctly unchanged by test 1. +Report: Time stamp was correctly unchanged by test 2. +Report: Time stamp was correctly unchanged by test 3. +Report: Time stamp was correctly unchanged by test 4. +Report: Time stamp was correctly unchanged by test 5. +Report: Time stamp was correctly unchanged by test 6. +Report: Time stamp was correctly unchanged by test 7. +Report: Time stamp was correctly unchanged by test 8. +Report: Time stamp was correctly unchanged by test 9. +Report: Time stamp was correctly unchanged by test 10. +Report: Time stamp was correctly unchanged by test 11. +Report: Time stamp was correctly unchanged by test 12. +Report: Time stamp was correctly unchanged by test 13. +Report: Time stamp was correctly unchanged by test 14. +Report: Time stamp was correctly unchanged by test 15. +Report: Time stamp was correctly unchanged by test 16. +Report: Time stamp was correctly unchanged by test 17. +Report: Time stamp was correctly unchanged by test 18. +Report: Time stamp was correctly unchanged by test 19. +Report: Time stamp was correctly unchanged by test 20. +Report: Time stamp was correctly unchanged by test 21. +Report: Time stamp was correctly unchanged by test 22. +Report: Time stamp was correctly unchanged by test 23. +Report: Time stamp was correctly unchanged by test 24. +Report: Time stamp was correctly changed by test 25. +Report: Time stamp was correctly changed by test 26. +Report: Time stamp was correctly changed by test 27. +Report: Time stamp was correctly changed by test 28. +Report: Time stamp was correctly changed by test 29. +Report: Time stamp was correctly changed by test 30. +Report: Time stamp was correctly changed by test 31. +Report: Time stamp was correctly changed by test 32. +Report: Time stamp was correctly changed by test 33. +Report: Time stamp was correctly changed by test 34. +Report: Time stamp was correctly changed by test 35. +Report: Time stamp was correctly changed by test 36. +Report: Time stamp was correctly changed by test 37. +Report: Time stamp was correctly changed by test 38. +Report: Time stamp was correctly changed by test 39. +Report: Time stamp was correctly changed by test 40. +Report: Time stamp was correctly changed by test 41. +Report: Time stamp was correctly changed by test 42. +Report: Time stamp was correctly changed by test 43. +Report: Time stamp was correctly changed by test 44. +Report: Time stamp was correctly changed by test 45. +Report: Time stamp was correctly changed by test 46. +Report: Time stamp was correctly changed by test 47. +Report: Time stamp was correctly changed by test 48. +Report: Time stamp was correctly changed by test 49. +Report: success with remove test #0. +Report: success with remove test #1. +Report: success with remove test #2. +Report: success with remove test #3. +Report: success with remove test #4. +Report: success with remove test #5. +Report: success with remove test #6. +Report: success with remove test #7. +Report: success with remove test #8. +Report: success with remove test #9. +Report: success with remove test #10. +Report: success with remove test #11. +Report: success with remove test #12. +Report: success with remove test #13. +Report: success with remove test #14. +Report: success with remove test #15. +Report: success with remove test #16. +Report: success with remove test #17. +Report: success with remove test #18. +Report: success with remove test #19. +Report: success with remove test #20. +Report: success with remove test #21. +Report: success with remove test #22. +Report: success with remove test #23. +Report: success with remove test #24. +Report: success with remove test #25. +Report: success with remove test #26. +Report: success with remove test #27. +Report: success with remove test #28. +Report: success with remove test #29. +Report: success with remove test #30. +Report: success with remove test #31. +Report: success with remove test #32. +Report: success with remove test #33. +Report: success with remove test #34. +Report: success with remove test #35. +Report: success with remove test #36. +Report: success with remove test #37. +Report: success with remove test #38. +Report: success with remove test #39. +Report: success with remove test #40. +Report: success with remove test #41. +Report: success with remove test #42. +Report: success with remove test #43. +Report: success with remove test #44. +Report: success with remove test #45. +Report: success with remove test #46. +Report: success with remove test #47. +Report: success with remove test #48. +Report: success with remove test #49. + (errno subtests beginning...) + report on test for E2BIG in set: test successful + report on test for EACCES in no-right set: test successful + report on test for EACCES in SHARED set: test successful + report on test for success in EXCL set: test successful. + report on test for EBADF in set: test successful + report on test for EBADF in set: test successful + report on test for EFAULT in set: test successful + report on test for EFAULT in set: test successful + report on test for EINVAL in set (bad token): test successful + report on test for EINVAL in set (bad session id): test successful + report on test for E2BIG in get: test successful + report on test for EACCES in no-right get: test successful + report on test for success in SHARED get: test successful. + report on test for success in EXCL get: test successful. + report on test for EBADF in get: test successful + report on test for EBADF in get: test successful + report on test for EINVAL in get (invalid session): test successful + report on test for EINVAL in get (invalid token): test successful + report on test for ENOENT in get: test successful + report on test for EACCES in no-right remove: test successful + report on test for EACCES in SHARED remove: test successful + report on test for success in EXCL remove: test successful. + report on test for EBADF in remove: test successful + report on test for EBADF in remove: test successful + report on test for EFAULT in remove: test successful + report on test for EINVAL in remove (bad token): test successful + report on test for EINVAL in remove (bad session): test successful + (errno subtests complete) +Attribute tests complete! diff --git a/143 b/143 new file mode 100755 index 00000000..5e46795a --- /dev/null +++ b/143 @@ -0,0 +1,45 @@ +#! /bin/sh +# FSQA Test No. 143 +# +# Dmapi get/set_eventlist +# +#----------------------------------------------------------------------- +# Copyright (c) 2006 Silicon Graphics, Inc. All Rights Reserved. +#----------------------------------------------------------------------- +# +# creator +owner=allanr@sgi.com + +seq=`basename $0` +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 15 + +_cleanup() +{ + _cleanup_testdir +} + +# get standard environment, filters and checks +. ./common.rc +. ./common.filter +. ./common.dmapi + +# real QA test starts here +_supported_fs xfs +_supported_os Linux + +_require_scratch +_scratch_mkfs_xfs >/dev/null 2>&1 +_dmapi_scratch_mount + +mkdir -p $SCRATCH_MNT/dmapi + +# run DMAPI test using verbose output +${DMAPI_QASUITE2_DIR}src/test_eventlist -v $DMAPI_LS_TO_COPY_PATH $SCRATCH_MNT + +status=0 +exit diff --git a/143.out b/143.out new file mode 100644 index 00000000..78973819 --- /dev/null +++ b/143.out @@ -0,0 +1,98 @@ +QA output created by 143 + SET: DM_EVENT_ATTRIBUTE + SET: DM_EVENT_DESTROY + (All events cleared) + SET: DM_EVENT_CREATE + SET: DM_EVENT_POSTCREATE + SET: DM_EVENT_REMOVE + SET: DM_EVENT_POSTREMOVE + SET: DM_EVENT_RENAME + SET: DM_EVENT_POSTRENAME + SET: DM_EVENT_LINK + SET: DM_EVENT_POSTLINK + SET: DM_EVENT_SYMLINK + SET: DM_EVENT_POSTSYMLINK + SET: DM_EVENT_ATTRIBUTE + SET: DM_EVENT_DESTROY + (All events cleared) + SET: DM_EVENT_PREUNMOUNT + SET: DM_EVENT_UNMOUNT + SET: DM_EVENT_DEBUT + SET: DM_EVENT_CREATE + SET: DM_EVENT_POSTCREATE + SET: DM_EVENT_REMOVE + SET: DM_EVENT_POSTREMOVE + SET: DM_EVENT_RENAME + SET: DM_EVENT_POSTRENAME + SET: DM_EVENT_LINK + SET: DM_EVENT_POSTLINK + SET: DM_EVENT_SYMLINK + SET: DM_EVENT_POSTSYMLINK + SET: DM_EVENT_ATTRIBUTE + SET: DM_EVENT_DESTROY + SET: DM_EVENT_NOSPACE + (All events cleared) +File test beginning... + note: DM_EVENT_CANCEL could not be set (EINVAL) + note: DM_EVENT_MOUNT could not be set (EINVAL) + note: DM_EVENT_PREUNMOUNT could not be set (EINVAL) + note: DM_EVENT_UNMOUNT could not be set (EINVAL) + note: DM_EVENT_DEBUT could not be set (EINVAL) + note: DM_EVENT_CREATE could not be set (EINVAL) + note: DM_EVENT_CLOSE could not be set (EINVAL) + note: DM_EVENT_POSTCREATE could not be set (EINVAL) + note: DM_EVENT_REMOVE could not be set (EINVAL) + note: DM_EVENT_POSTREMOVE could not be set (EINVAL) + note: DM_EVENT_RENAME could not be set (EINVAL) + note: DM_EVENT_POSTRENAME could not be set (EINVAL) + note: DM_EVENT_LINK could not be set (EINVAL) + note: DM_EVENT_POSTLINK could not be set (EINVAL) + note: DM_EVENT_SYMLINK could not be set (EINVAL) + note: DM_EVENT_POSTSYMLINK could not be set (EINVAL) + note: DM_EVENT_READ could not be set (EINVAL) + note: DM_EVENT_WRITE could not be set (EINVAL) + note: DM_EVENT_TRUNCATE could not be set (EINVAL) + note: DM_EVENT_NOSPACE could not be set (EINVAL) + note: DM_EVENT_USER could not be set (EINVAL) + (errno subtests beginning...) + report on test for EACCES in no-right set: test successful + report on test for EACCES in SHARED set: test successful + report on test for success in EXCL set: test successful. + report on test for EBADF in set: test successful + report on test for EFAULT in set: test successful + report on test for EFAULT in set: test successful + report on test for EINVAL in set (bad session): test successful + report on test for EINVAL in set (bad token): test successful + report on test for EACCES in no-right get: test successful + report on test for success in SHARED get: test successful. + report on test for success in EXCL get: test successful. + report on test for EBADF in get: test successful + report on test for EFAULT in get: test successful + report on test for EINVAL in get (bad session): test successful + report on test for EINVAL in get (bad token): test successful + (errno subtests complete) + File test complete. + +Directory test beginning... + note: DM_EVENT_CANCEL could not be set (EINVAL) + note: DM_EVENT_MOUNT could not be set (EINVAL) + note: DM_EVENT_PREUNMOUNT could not be set (EINVAL) + note: DM_EVENT_UNMOUNT could not be set (EINVAL) + note: DM_EVENT_DEBUT could not be set (EINVAL) + note: DM_EVENT_CLOSE could not be set (EINVAL) + note: DM_EVENT_READ could not be set (EINVAL) + note: DM_EVENT_WRITE could not be set (EINVAL) + note: DM_EVENT_TRUNCATE could not be set (EINVAL) + note: DM_EVENT_NOSPACE could not be set (EINVAL) + note: DM_EVENT_USER could not be set (EINVAL) + Directory test complete. + +Filesystem test beginning... + note: DM_EVENT_CANCEL could not be set (EINVAL) + note: DM_EVENT_MOUNT could not be set (EINVAL) + note: DM_EVENT_CLOSE could not be set (EINVAL) + note: DM_EVENT_READ could not be set (EINVAL) + note: DM_EVENT_WRITE could not be set (EINVAL) + note: DM_EVENT_TRUNCATE could not be set (EINVAL) + note: DM_EVENT_USER could not be set (EINVAL) + Filesystem test complete. diff --git a/144 b/144 new file mode 100755 index 00000000..4d44ac69 --- /dev/null +++ b/144 @@ -0,0 +1,47 @@ +#! /bin/sh +# FSQA Test No. 143 +# +# Dmapi get/set_fileattr, get_bulkattr, get_dirattrs +# +#----------------------------------------------------------------------- +# Copyright (c) 2006 Silicon Graphics, Inc. All Rights Reserved. +#----------------------------------------------------------------------- +# +# creator +owner=allanr@sgi.com + +seq=`basename $0` +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 15 + +_cleanup() +{ + _cleanup_testdir +} + +# get standard environment, filters and checks +. ./common.rc +. ./common.filter +. ./common.dmapi + +# real QA test starts here +_supported_fs xfs +_supported_os Linux + +_require_scratch +_scratch_mkfs_xfs >/dev/null 2>&1 +_dmapi_scratch_mount + +mkdir -p $SCRATCH_MNT/dmapi + +# run DMAPI test using verbose output +echo ${DMAPI_QASUITE2_DIR}src/test_fileattr -v $DMAPI_LS_TO_COPY_PATH $SCRATCH_MNT + +${DMAPI_QASUITE2_DIR}src/test_fileattr -v $DMAPI_LS_TO_COPY_PATH $SCRATCH_MNT + +status=0 +exit diff --git a/144.out b/144.out new file mode 100644 index 00000000..5cdf36c1 --- /dev/null +++ b/144.out @@ -0,0 +1,246 @@ +QA output created by 144 +/home/allanr/isms/xfs-cmds-2/xfstests/dmapi/src/suite2/src/test_fileattr -v /home/allanr/isms/xfs-cmds-2/xfstests/dmapi/src/suite2//bindir/ls_to_copy /mnt/scratch + +Creating/setting up test files. +report: set #0 was successful. +report: set #1 was successful. +report: set #2 was successful. +report: set #3 was successful. +report: set #4 was successful. +report: set #5 was successful. +report: set #6 was successful. +report: set #7 was successful. +report: set #8 was successful. +report: set #9 was successful. +report: set #10 was successful. +report: set #11 was successful. +report: set #12 was successful. +report: set #13 was successful. +report: set #14 was successful. +report: set #15 was successful. +report: set #16 was successful. +report: set #17 was successful. +report: set #18 was successful. +report: set #19 was successful. +report: set #20 was successful. +report: set #21 was successful. +report: set #22 was successful. +report: set #23 was successful. +report: set #24 was successful. +report: set #25 was successful. +report: set #26 was successful. +report: set #27 was successful. +report: set #28 was successful. +report: set #29 was successful. +report: set #30 was successful. +report: set #31 was successful. +report: set #32 was successful. +report: set #33 was successful. +report: set #34 was successful. +report: set #35 was successful. +report: set #36 was successful. +report: set #37 was successful. +report: set #38 was successful. +report: set #39 was successful. +report: set #40 was successful. +report: set #41 was successful. +report: set #42 was successful. +report: set #43 was successful. +report: set #44 was successful. +report: set #45 was successful. +report: set #46 was successful. +report: set #47 was successful. +report: set #48 was successful. +report: set #49 was successful. + +Running get_fileattr test +report: get #0 had no errors. +report: get #1 had no errors. +report: get #2 had no errors. +report: get #3 had no errors. +report: get #4 had no errors. +report: get #5 had no errors. +report: get #6 had no errors. +report: get #7 had no errors. +report: get #8 had no errors. +report: get #9 had no errors. +report: get #10 had no errors. +report: get #11 had no errors. +report: get #12 had no errors. +report: get #13 had no errors. +report: get #14 had no errors. +report: get #15 had no errors. +report: get #16 had no errors. +report: get #17 had no errors. +report: get #18 had no errors. +report: get #19 had no errors. +report: get #20 had no errors. +report: get #21 had no errors. +report: get #22 had no errors. +report: get #23 had no errors. +report: get #24 had no errors. +report: get #25 had no errors. +report: get #26 had no errors. +report: get #27 had no errors. +report: get #28 had no errors. +report: get #29 had no errors. +report: get #30 had no errors. +report: get #31 had no errors. +report: get #32 had no errors. +report: get #33 had no errors. +report: get #34 had no errors. +report: get #35 had no errors. +report: get #36 had no errors. +report: get #37 had no errors. +report: get #38 had no errors. +report: get #39 had no errors. +report: get #40 had no errors. +report: get #41 had no errors. +report: get #42 had no errors. +report: get #43 had no errors. +report: get #44 had no errors. +report: get #45 had no errors. +report: get #46 had no errors. +report: get #47 had no errors. +report: get #48 had no errors. +report: get #49 had no errors. + +Running get_dirattrs test +report: get #0 had no errors. +report: get #1 had no errors. +report: get #2 had no errors. +report: get #3 had no errors. +report: get #4 had no errors. +report: get #5 had no errors. +report: get #6 had no errors. +report: get #7 had no errors. +report: get #8 had no errors. +report: get #9 had no errors. +report: get #10 had no errors. +report: get #11 had no errors. +report: get #12 had no errors. +report: get #13 had no errors. +report: get #14 had no errors. +report: get #15 had no errors. +report: get #16 had no errors. +report: get #17 had no errors. +report: get #18 had no errors. +report: get #19 had no errors. +report: get #20 had no errors. +report: get #21 had no errors. +report: get #22 had no errors. +report: get #23 had no errors. +report: get #24 had no errors. +report: get #25 had no errors. +report: get #26 had no errors. +report: get #27 had no errors. +report: get #28 had no errors. +report: get #29 had no errors. +report: get #30 had no errors. +report: get #31 had no errors. +report: get #32 had no errors. +report: get #33 had no errors. +report: get #34 had no errors. +report: get #35 had no errors. +report: get #36 had no errors. +report: get #37 had no errors. +report: get #38 had no errors. +report: get #39 had no errors. +report: get #40 had no errors. +report: get #41 had no errors. +report: get #42 had no errors. +report: get #43 had no errors. +report: get #44 had no errors. +report: get #45 had no errors. +report: get #46 had no errors. +report: get #47 had no errors. +report: get #48 had no errors. +report: get #49 had no errors. +report: get_dirattrs successfully found 50 files in 5 loops. + +Running get_bulkattr test +report: get #0 had no errors. +report: get #1 had no errors. +report: get #2 had no errors. +report: get #3 had no errors. +report: get #4 had no errors. +report: get #5 had no errors. +report: get #6 had no errors. +report: get #7 had no errors. +report: get #8 had no errors. +report: get #9 had no errors. +report: get #10 had no errors. +report: get #11 had no errors. +report: get #12 had no errors. +report: get #13 had no errors. +report: get #14 had no errors. +report: get #15 had no errors. +report: get #16 had no errors. +report: get #17 had no errors. +report: get #18 had no errors. +report: get #19 had no errors. +report: get #20 had no errors. +report: get #21 had no errors. +report: get #22 had no errors. +report: get #23 had no errors. +report: get #24 had no errors. +report: get #25 had no errors. +report: get #26 had no errors. +report: get #27 had no errors. +report: get #28 had no errors. +report: get #29 had no errors. +report: get #30 had no errors. +report: get #31 had no errors. +report: get #32 had no errors. +report: get #33 had no errors. +report: get #34 had no errors. +report: get #35 had no errors. +report: get #36 had no errors. +report: get #37 had no errors. +report: get #38 had no errors. +report: get #39 had no errors. +report: get #40 had no errors. +report: get #41 had no errors. +report: get #42 had no errors. +report: get #43 had no errors. +report: get #44 had no errors. +report: get #45 had no errors. +report: get #46 had no errors. +report: get #47 had no errors. +report: get #48 had no errors. +report: get #49 had no errors. +report: get_bulkattr successfully found 50 files in 4 loops. +Beginning file attribute tests... + (errno subtests beginning...) + report on test for EACCES in no-right set: test successful + report on test for EACCES in SHARED set: test successful + report on test for success in EXCL set: test successful. + report on test for EBADF in set: test successful + report on test for EFAULT in set: test successful + report on test for EINVAL in set (bad token): test successful + report on test for EINVAL in set (bad session): test successful + report on test for EACCES in no-right get: test successful + report on test for success in SHARED get: test successful. + report on test for success in EXCL get: test successful. + report on test for EBADF in get: test successful + report on test for EFAULT in get: test successful + report on test for EFAULT in get: test successful + report on test for EINVAL in get (bad token): test successful + report on test for EINVAL in get (bad session): test successful + report on test for EACCES in no-right get_dir: test successful + report on test for success in SHARED get_dir: test successful. + report on test for success in EXCL get_dir: test successful. + report on test for EBADF in get: test successful + report on test for EFAULT in get_dir (bad locp): test successful + report on test for EFAULT in get_dir (bad bufp): test successful + report on test for EFAULT in get_dir (bad rlenp): test successful + report on test for EACCES in no-right get_bulk: test successful + report on test for success in SHARED get_bulk: test successful. + report on test for success in EXCL get_bulk: test successful. + report on test for EFAULT in get_bulk (bad bufp): test successful + report on test for EFAULT in get_bulk (bad locp): test successful + report on test for EFAULT in get_bulk (bad rlenp): test successful + report on test for EFAULT in get_bulk (bad bufp): test successful + (errno subtests complete) +(Deleting test files...) +File attribute tests complete. diff --git a/145 b/145 new file mode 100755 index 00000000..e228bff1 --- /dev/null +++ b/145 @@ -0,0 +1,45 @@ +#! /bin/sh +# FSQA Test No. 142 +# +# Dmapi probe/punch_hole +# +#----------------------------------------------------------------------- +# Copyright (c) 2006 Silicon Graphics, Inc. All Rights Reserved. +#----------------------------------------------------------------------- +# +# creator +owner=allanr@sgi.com + +seq=`basename $0` +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 15 + +_cleanup() +{ + _cleanup_testdir +} + +# get standard environment, filters and checks +. ./common.rc +. ./common.filter +. ./common.dmapi + +# real QA test starts here +_supported_fs xfs +_supported_os Linux + +_require_scratch +_scratch_mkfs_xfs >/dev/null 2>&1 +_dmapi_scratch_mount + +mkdir -p $SCRATCH_MNT/dmapi + +# run DMAPI test using verbose output +${DMAPI_QASUITE2_DIR}src/test_hole -v $DMAPI_LS_TO_COPY_PATH $SCRATCH_MNT + +status=0 +exit diff --git a/145.out b/145.out new file mode 100644 index 00000000..ec64ae54 --- /dev/null +++ b/145.out @@ -0,0 +1,36 @@ +QA output created by 145 +Hole test beginning... + Time stamp unchanged by hole from offset 28672. + Verified hole at 28672 + Time stamp unchanged by hole from offset 24576. + Verified hole at 24576 + Time stamp unchanged by hole from offset 20480. + Verified hole at 20480 + Time stamp unchanged by hole from offset 16384. + Verified hole at 16384 + Time stamp unchanged by hole from offset 12288. + Verified hole at 12288 + Time stamp unchanged by hole from offset 8192. + Verified hole at 8192 + Time stamp unchanged by hole from offset 4096. + Verified hole at 4096 + (beginning errno subtests...) + report on test for E2BIG in probe (from past EOF): test successful + report on test for EACCES in no-right probe: test successful + report on test for success in SHARED probe: test successful. + report on test for success in EXCL probe: test successful. + report on test for EACCES in no-right punch: test successful + report on test for EACCES in SHARED punch: test successful + report on test for success in EXCL punch: test successful. + report on test for EAGAIN in punch: test successful + report on test for EBADF in probe: test successful + report on test for EBADF in punch: test successful + report on test for EFAULT in probe (null handle): test successful + report on test for EFAULT in probe (bad rlen): test successful + report on test for EFAULT in probe (bad roff): test successful + report on test for EFAULT in punch: test successful + report on test for EINVAL in probe (bad session): test successful + report on test for EINVAL in probe (bad token): test successful + report on test for EINVAL in probe (bad token 2): test successful + (errno subtests complete) +Hole test complete. diff --git a/146 b/146 new file mode 100755 index 00000000..c833eaa3 --- /dev/null +++ b/146 @@ -0,0 +1,49 @@ +#! /bin/sh +# FSQA Test No. 142 +# +# Dmapi read/write_invis +# +#----------------------------------------------------------------------- +# Copyright (c) 2006 Silicon Graphics, Inc. All Rights Reserved. +#----------------------------------------------------------------------- +# +# creator +owner=allanr@sgi.com + +seq=`basename $0` +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 15 + +_cleanup() +{ + _cleanup_testdir +} + +_report_filter () { + perl -ne "s/Report: \"0x[0-f]+\" was written and \"0x[0-f]+\" was read at byte [0-9]+ million./Report: \"HEX\" was written and \"HEX\" was read at byte NUM million./g ; print" +} + +# get standard environment, filters and checks +. ./common.rc +. ./common.filter +. ./common.dmapi + +# real QA test starts here +_supported_fs xfs +_supported_os Linux + +_require_scratch +_scratch_mkfs_xfs >/dev/null 2>&1 +_dmapi_scratch_mount + +mkdir -p $SCRATCH_MNT/dmapi + +# run DMAPI test using verbose output +${DMAPI_QASUITE2_DIR}src/test_invis -v $DMAPI_LS_TO_COPY_PATH $SCRATCH_MNT | _report_filter + +status=0 +exit diff --git a/146.out b/146.out new file mode 100644 index 00000000..4a28a12f --- /dev/null +++ b/146.out @@ -0,0 +1,320 @@ +QA output created by 146 +Invisible read/write tests beginning... +Report: time stamp unchanged by write + +Report: time stamp unchanged by read +Report: time stamp unchanged by write + +Report: time stamp unchanged by read +Report: time stamp unchanged by write + +Report: time stamp unchanged by read +Report: time stamp unchanged by write + +Report: time stamp unchanged by read +Report: time stamp unchanged by write + +Report: time stamp unchanged by read +Report: time stamp unchanged by write + +Report: time stamp unchanged by read +Report: time stamp unchanged by write + +Report: time stamp unchanged by read +Report: time stamp unchanged by write + +Report: time stamp unchanged by read +Report: time stamp unchanged by write + +Report: time stamp unchanged by read +Report: time stamp unchanged by write + +Report: time stamp unchanged by read +Report: time stamp unchanged by write +..... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +..... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +..... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +..... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +..... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +..... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +..... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +..... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +..... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +..... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.......... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.......... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.......... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.......... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.......... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.......... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.......... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.......... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.......... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.......... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +......................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +......................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +......................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +......................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +......................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +......................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +......................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +......................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +......................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +......................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.............................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.............................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.............................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.............................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.............................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.............................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.............................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.............................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.............................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +.............................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +................................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +................................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +................................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +................................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +................................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +................................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +................................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +................................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +................................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +................................... +Report: time stamp unchanged by read +Report: time stamp unchanged by write +........................................ +Report: time stamp unchanged by read +Report: time stamp unchanged by write +........................................ +Report: time stamp unchanged by read +Report: time stamp unchanged by write +........................................ +Report: time stamp unchanged by read +Report: time stamp unchanged by write +........................................ +Report: time stamp unchanged by read +Report: time stamp unchanged by write +........................................ +Report: time stamp unchanged by read +Report: time stamp unchanged by write +........................................ +Report: time stamp unchanged by read +Report: time stamp unchanged by write +........................................ +Report: time stamp unchanged by read +Report: time stamp unchanged by write +........................................ +Report: time stamp unchanged by read +Report: time stamp unchanged by write +........................................ +Report: time stamp unchanged by read +Report: time stamp unchanged by write +........................................ +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............................................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............................................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............................................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............................................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............................................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............................................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............................................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............................................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............................................. +Report: time stamp unchanged by read +Report: time stamp unchanged by write +............................................. +Report: time stamp unchanged by read +Report: "HEX" was written and "HEX" was read at byte NUM million. + (errno subtests beginning...) + report on test for EACCES in no-right write: test successful + report on test for EACCES in SHARED write: test successful + report on test for success in EXCL write: test successful. + report on test for EBADF in write: test successful + report on test for EBADF in read: test successful + report on test for EBADF in write: test successful + report on test for EFAULT in write: test successful + report on test for EINVAL in (bad sid) write: test successful + report on test for EACCES in no-right read: test successful + report on test for success in SHARED read: test successful. + report on test for success in EXCL read: test successful. + report on test for EBADF in read: test successful + report on test for EFAULT in read: test successful + report on test for EINVAL in (bad sid) read: test successful + (errno subtests complete!) +Invisible read/write tests complete. diff --git a/147 b/147 new file mode 100755 index 00000000..bb378d7a --- /dev/null +++ b/147 @@ -0,0 +1,45 @@ +#! /bin/sh +# FSQA Test No. 142 +# +# Dmapi get/set_region +# +#----------------------------------------------------------------------- +# Copyright (c) 2006 Silicon Graphics, Inc. All Rights Reserved. +#----------------------------------------------------------------------- +# +# creator +owner=allanr@sgi.com + +seq=`basename $0` +echo "QA output created by $seq" + +here=`pwd` +tmp=/tmp/$$ +status=1 # failure is the default! +trap "_cleanup; exit \$status" 0 1 2 3 15 + +_cleanup() +{ + _cleanup_testdir +} + +# get standard environment, filters and checks +. ./common.rc +. ./common.filter +. ./common.dmapi + +# real QA test starts here +_supported_fs xfs +_supported_os Linux + +_require_scratch +_scratch_mkfs_xfs >/dev/null 2>&1 +_dmapi_scratch_mount + +mkdir -p $SCRATCH_MNT/dmapi + +# run DMAPI test using verbose output +${DMAPI_QASUITE2_DIR}src/test_region -v $DMAPI_LS_TO_COPY_PATH $SCRATCH_MNT + +status=0 +exit diff --git a/147.out b/147.out new file mode 100644 index 00000000..5ebbb65b --- /dev/null +++ b/147.out @@ -0,0 +1,29 @@ +QA output created by 147 +Region test beginning... +Test #0 okay +Test #1 okay +Test #2 okay +Test #3 okay +Test #4 okay +Test #5 okay +Test #6 okay +Test #7 okay + (errno subtests beginning...) + report on test for E2BIG in set: test successful + report on test for E2BIG in set: test successful + report on test for EACCES in no-right set: test successful + report on test for EACCES in SHARED set: test successful + report on test for success in EXCL set: test successful. + report on test for EFAULT in set: test successful + report on test for EFAULT in set: test successful + report on test for EINVAL in set (bad session id): test successful + report on test for E2BIG in get: test successful + report on test for EFAULT in get (bad handle): test successful + report on test for EFAULT in get (bad regbufp): test successful + report on test for EFAULT in get (bad nelemp): test successful + report on test for EACCES in no-right get: test successful + report on test for success in SHARED get: test successful. + report on test for success in EXCL get: test successful. + report on test for EINVAL in get: test successful + (errno subtests complete) +Region test complete. diff --git a/Makefile b/Makefile index 2c7c6080..5e1ff189 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,7 @@ LSRCFILES = configure configure.in aclocal.m4 README VERSION LDIRT = config.log .dep config.status config.cache confdefs.h conftest* \ check.log check.time -SUBDIRS = include lib ltp src m4 +SUBDIRS = include lib ltp src m4 dmapi default: $(CONFIGURE) new remake check $(TESTS) ifeq ($(HAVE_BUILDDEFS), no) @@ -36,7 +36,7 @@ $(CONFIGURE): ./configure \ --libexecdir=/usr/lib \ --enable-lib64=yes - + cd $(TOPDIR)/dmapi/ ; ./configure aclocal.m4:: aclocal --acdir=`pwd`/m4 --output=$@ diff --git a/common.dmapi b/common.dmapi new file mode 100644 index 00000000..df15da16 --- /dev/null +++ b/common.dmapi @@ -0,0 +1,23 @@ +##/bin/sh +# +# Copyright (c) 2006 Silicon Graphics, Inc. All Rights Reserved. +# +# dmapi functions +# + +# Commands relitive to dmapi qa + +DMAPI_QASUITE1_DIR=$here/dmapi/src/suite1/ +DMAPI_QASUITE2_DIR=$here/dmapi/src/suite2/ + +DMAPI_LS_TO_COPY_PATH=$DMAPI_QASUITE2_DIR/bindir/ls_to_copy + +_dmapi_scratch_mount () { + if [ `echo "$MOUNT_OPTIONS" | grep -c dmapi` -gt 0 -o \ + `echo "$MOUNT_OPTIONS" | grep -c dmi` -gt 0 ] ; then + #already got dmapi options set + _scratch_mount + else + _scratch_mount "-o dmapi,mtpt=$SCRATCH_MNT" + fi +} diff --git a/common.rc b/common.rc index 7034e9a6..df6d02e0 100644 --- a/common.rc +++ b/common.rc @@ -93,7 +93,7 @@ umask 022 _mount() { - $MOUNT_PROG `echo $* | _mount_ops_minus_o_comma_replace` + $MOUNT_PROG `_mount_ops_filter $*` } _scratch_options() @@ -147,20 +147,30 @@ _test_options() TEST_OPTIONS="$TEST_OPTIONS ${log_opt}logdev=$TEST_LOGDEV" } -_mount_ops_minus_o_comma_replace() +_mount_ops_filter() { - # irix is fussy about how it is fed its mount options - # - multiple -o's are not allowed - # - no spaces between comma delimitered options - - # this sed script replaces all -o's (except the first) with a comma - # not required for linux, but won't hurt - sed -e 's/[[:space:]]*-o[[:space:]]*/UnIqUe/1; s/[[:space:]]*-o[[:space:]]*/,/g; s/UnIqUe/ -o /1' + params="$*" + + #handle dmapi mtpt option correctly + let "last_index=$#-1" + [ $last_index -gt 0 ] && shift $last_index + FS_ESCAPED=`echo $1 | $SED_PROG -e 's/\\//\\\\\\//g'` + params="`echo $params | \ + $PERL_PROG -ne "s/mtpt=[^,|^\n|^\s]*/mtpt=$FS_ESCAPED\1\2/; print;"`" + + # irix is fussy about how it is fed its mount options + # - multiple -o's are not allowed + # - no spaces between comma delimitered options + + # this sed script replaces all -o's (except the first) with a comma + # not required for linux, but won't hurt + echo $params | sed -e 's/[[:space:]]*-o[[:space:]]*/UnIqUe/1; s/[[:space:]]*-o[[:space:]]*/,/g; s/UnIqUe/ -o /1' } _scratch_mount_options() { _scratch_options mount + echo $SCRATCH_OPTIONS $MOUNT_OPTIONS $* $SCRATCH_DEV $SCRATCH_MNT } @@ -172,7 +182,7 @@ _scratch_mount() _test_mount() { _test_options mount - _mount -t $FSTYP $TEST_OPTIONS $MOUNT_OPTIONS $* $TEST_DEV $TEST_DIR + _mount -t $FSTYP $TEST_OPTIONS $TEST_FS_MOUNT_OPTS $* $TEST_DEV $TEST_DIR } _scratch_mkfs_options() diff --git a/group b/group index cbb22127..c8e01f79 100644 --- a/group +++ b/group @@ -221,3 +221,9 @@ pattern ajones@sgi.com 139 metadata log 140 metadata log 141 rw auto +142 dmapi auto +143 dmapi auto +144 dmapi auto +145 dmapi auto +146 dmapi auto +147 dmapi auto diff --git a/include/buildmacros b/include/buildmacros index b2559efc..c6678e57 100644 --- a/include/buildmacros +++ b/include/buildmacros @@ -124,7 +124,14 @@ endif SUBDIRS_MAKERULE = \ @for d in $(SUBDIRS) ""; do \ - if test -d "$$d" -a ! -z "$$d"; then \ + if test "$$d" == "dmapi"; then \ + if test "$(PKG_PLATFORM)" == "irix" ; then \ + echo "DMAPI QA NOT AVAIABLE FOR IRIX"; \ + else \ + $(ECHO) === $$d ===; \ + cd dmapi && $(MAKE) && cd .. || exit $$?; \ + fi; \ + elif test -d "$$d" -a ! -z "$$d"; then \ $(ECHO) === $$d ===; \ $(MAKEF) -C $$d $@ || exit $$?; \ fi; \ -- 2.39.5