Message ID | 1494485710-2400-3-git-send-email-amir73il@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
diff --git a/tests/overlay/017 b/tests/overlay/017 index fabfbb5..bb467f7 100755 --- a/tests/overlay/017 +++ b/tests/overlay/017 @@ -56,6 +56,7 @@ _supported_fs overlay _supported_os Linux _require_scratch _require_test_program "af_unix" +_require_test_program "t_dir_type" rm -f $seqres.full @@ -107,7 +108,7 @@ function check_inode_numbers() # Test constant readdir(3)/getdents(2) d_ino - # Expect to find file by inode number cat $before | while read ino f; do - find $dir/ -maxdepth 1 -inum $ino | grep -q $f || \ + $here/src/t_dir_type $dir $ino | grep -q $f || \ echo "$f not found by ino $ino (from $before)" done }
'find -ino' is this test was supposed to filter files by inode number that was recorded with 'ls -i' to compare st_ino returned by stat(2) with d_ino returned by getdents64(2). It turns out that on some systems, 'find -ino' uses stat(2) for filtering by inode number, which is not what we want. Use the auxiliary program t_dir_type to filter files by inode number instead. Signed-off-by: Amir Goldstein <amir73il@gmail.com> --- tests/overlay/017 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)