Pádraig Brady <[email protected]> writes:

> On 05/11/2025 23:28, Bruno Haible wrote:
>> On Hurd 2025/x86_64, wc/wc-total hangs.
>
> Hangs are really very bad of course.
> I don't have access to Hurf.
> Doe the following avoid the hang at least?
>
> cheers,
> Padraig
>
> diff --git a/tests/wc/wc-total.sh b/tests/wc/wc-total.sh
> index 1622962c5..41fc2384d 100755
> --- a/tests/wc/wc-total.sh
> +++ b/tests/wc/wc-total.sh
> @@ -42,10 +42,10 @@ compare exp out || fail=1
>   wc --total=always 2b > out || fail=1
>   test "$(wc -l < out)" = 2 || fail=1
>
> -if truncate -s 2E big; then
> +if timeout 10 truncate -s 2E big; then
>     if test "$UINTMAX_MAX" = '18446744073709551615'; then
>       # Ensure overflow is diagnosed
> -    returns_ 1 wc --total=only -c big big big big big big big big \
> +    returns_ 1 timeout 10 wc --total=only -c big big big big big big big big 
> \
>         > out || fail=1
>
>       # Ensure total is saturated
> @@ -53,7 +53,7 @@ if truncate -s 2E big; then
>       compare exp out || fail=1
>
>       # Ensure overflow is ignored if totals not shown
> -    wc --total=never -c big big big big big big big big || fail=1
> +    timeout 10 wc --total=never -c big big big big big big big big || fail=1
>     fi
>   fi

Sadly, this doesn't resolve the hang.

Over SSH I ran the following:

    $ truncate -s 2E big
    $ wc --total=only -c big big big big big big big big
    Timeout, server localhost not responding.

In my QEMU window I saw the following message printed twice:

   $ no more room in ([memory address]) (ext2fs)

Looking at where that is printed, it looks like the file system cannot
find memory to map [1]. It seems like a bug, since all we are doing is
seeking and reading IO_BUFSIZE.

Should we just check if we are on Hurd and skip the test? I can send
them a bug report for this later, since it can be easily reproduced.

Collin

[1] 
https://cgit.git.savannah.gnu.org/cgit/hurd/gnumach.git/tree/vm/vm_map.c#n815

Reply via email to