On 03/17/2012 04:16 PM, Jim Meyering wrote: > Bruno Haible wrote: > >> On Solaris 9 and 10, there are 2 test failures: >> >> FAIL: misc/sort-discrim >> >> FAIL: dd/sparse >> >> These were not present in the previous test >> <https://lists.gnu.org/archive/html/coreutils/2012-01/msg00049.html>. > > Thanks. With the following, these should now be fixed. > I will probably adjust the comment below, since it's obviously not > OpenBSD-specific: > > >>From f008539325b134dacd0a7ee596b4954dad627179 Mon Sep 17 00:00:00 2001 > From: =?UTF-8?q?P=C3=A1draig=20Brady?= <p...@draigbrady.com> > Date: Sat, 17 Mar 2012 17:04:21 +0100 > Subject: [PATCH] tests: avoid spurious dd/sparse failure > > * tests/dd/sparse: Allow for greater variation in sparse-block counts. > Reported by Nelson H. F. Beebe and Bruno Haible. > --- > tests/dd/sparse | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/tests/dd/sparse b/tests/dd/sparse > index 17aa94b..4373119 100755 > --- a/tests/dd/sparse > +++ b/tests/dd/sparse > @@ -49,12 +49,14 @@ dd if=/dev/urandom of=file.in bs=1M count=1 conv=notrunc > oflag=append > > # Note the block allocations below are usually equal, > # but can vary by a file system block due to alignment, > -# which was seen on XFS at least. > +# which was seen on XFS at least. Also, with at least OpenBSD 5.1's > +# ffs file system, we see sparse granularity differences that led > +# us to use a larger value for max_sectors_per_sparse_block. > alloc_equal() { > - : ${sectors_per_block:=$(expr $(stat -f -c "%S" .) / 512)} > + : ${max_sectors_per_sparse_block:=$(expr $(stat -f -c "%S" .) / 64)} > alloc_diff=$(expr $(stat -c %b "$1") - $(stat -c %b "$2")) > alloc_diff=$(echo $alloc_diff | tr -d -- -) # abs() > - test $alloc_diff -le $sectors_per_block > + test $alloc_diff -le $max_sectors_per_sparse_block
Thanks for wrapping that up. Probably s/max/min/ though. I'll do a few tests and check in later, with the openbsd comment adjusted too. cheers, Pádraig,