coreutils-8.32 test failure on i586-gnu

  • Done
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Samuel Thibault
Owner
unassigned
Submitted by
Ludovic Courtès
Severity
normal
L
L
Ludovic Courtès wrote on 26 Oct 2022 19:20
(address . bug-guix@gnu.org)
87r0yu1ozc.fsf@inria.fr
Native builds of coreutils-8.32 (ca. commit
3734857fc55df2c599c2fe5cc4ae49f5d47879fc) have one test failure on
i586-gnu:

Toggle snippet (44 lines)
+ skip_if_root_
+ uid_is_privileged_
++ id -u
+ my_uid=999
+ case $my_uid in
+ return 1
+ touch unreadable
+ chmod a-r unreadable
+ df unreadable
df: Warning: cannot read table of mounted file systems: No such file or directory
Filesystem 1K-blocks Used Available Use% Mounted on
- 12288000 2916208 8757392 25% /
+ mkfifo_or_skip_ fifo
+ test 1 = 1
+ mkfifo fifo
+ timeout 10 df fifo
df: Warning: cannot read table of mounted file systems: No such file or directory
+ fail=1
+ test 1 = 1
+ dump_mount_list_
+ cat /proc/self/mountinfo
cat: /proc/self/mountinfo: No such file or directory
+ cat /proc/self/mounts
cat: /proc/self/mounts: No such file or directory
+ cat /proc/mounts
/dev/hd0s1 / ext2fs writable,store-type=typed 0 0
proc /proc /hurd/procfs defaults 0 0
none /dev/shm /hurd/tmpfs writable,no-sync,size=1514772K 0 0
+ Exit 1
+ set +e
+ exit 1
+ exit 1
+ remove_tmp_
+ __st=1
+ cleanup_
+ :
+ test '' = yes
+ cd /tmp/guix-build-coreutils-8.32.drv-0/coreutils-8.32
+ chmod -R u+rwx /tmp/guix-build-coreutils-8.32.drv-0/coreutils-8.32/gt-unreadable.sh.6E92
+ rm -rf /tmp/guix-build-coreutils-8.32.drv-0/coreutils-8.32/gt-unreadable.sh.6E92
+ exit 1
FAIL tests/df/unreadable.sh (exit status: 1)

Indeed, ‘df’ seems to read FIFOs as if they were regular files:

Toggle snippet (8 lines)
ludo@childhurd ~$ mkfifo fifo
ludo@childhurd ~$ ls -l fifo
prw-r--r-- 1 ludo users 0 Oct 21 07:08 fifo
ludo@childhurd ~$ df ./fifo
df: Warning: cannot read table of mounted file systems: No such file or directory
^C

It would seem that it’s stuck on a ‘dir_lookup’ RPC:

Toggle snippet (17 lines)
135<--132(pid83)->io_identity_request () = 0 137<--136(pid83) 131<--133(pid83) 29419
task109(pid83)-> 3206 (pn{ 18}) = 0
task109(pid83)-> 3206 (pn{ 19}) = 0
task109(pid83)-> 3206 (pn{ 17}) = 0
task109(pid83)-> 3206 (pn{ 19}) = 0
task109(pid83)-> 3206 (pn{ 17}) = 0
task109(pid83)-> 3206 (pn{ 16}) = 0
task109(pid83)-> 3206 (pn{ 14}) = 0
task109(pid83)-> 3206 (pn{ 17}) = 0
task109(pid83)-> 3206 (pn{ 14}) = 0
task109(pid83)-> 2023 (17022976 4096) = 0
86<--120(pid83)->dir_lookup ("home/ludo/fifo" 65 0) ...113
task109(pid83)-> 2021 (0 4096 1) = 0 17018880
task109(pid83)-> 3208 (pn{ 13} 0 1) = 0
task109(pid83)-> 3206 (pn{ 13}) = 0

… where 65 = O_NOTRANS | O_RDONLY.

Passing O_NOTRANS (without O_RDONLY) like the ‘stat’ command does works
fine.

Maybe /hurd/fifo needs to implement ‘trivfs_check_open_hook’ to avoid
actually opening?

Ludo’.
S
S
Samuel Thibault wrote on 26 Nov 2022 12:53
20221126115338.fvkutuq3cce5ed7r@begin
Hello,

It seems that replying on the web interface didn't work, so replying
again here by mail.

Ludovic Courtès, le mer. 26 oct. 2022 19:20:07 +0200, a ecrit:
Toggle quote (7 lines)
> ludo@childhurd ~$ mkfifo fifo
> ludo@childhurd ~$ ls -l fifo
> prw-r--r-- 1 ludo users 0 Oct 21 07:08 fifo
> ludo@childhurd ~$ df ./fifo
> df: Warning: cannot read table of mounted file systems: No such file or directory
> ^C

Using coreutils 9.1, I am not getting the issue any more:

€ mkfifo foo
€ ls -l foo
prw-r--r-- 1 samy samy 0 Nov 26 11:47 foo
€ df ./foo
Filesystem Size Used Avail Use% Mounted on
- 20G 18G 1.8G 91% /

Toggle quote (3 lines)
> Maybe /hurd/fifo needs to implement ‘trivfs_check_open_hook’ to avoid
> actually opening?

I don't think it will change the behavior? trivfs_S_dir_lookup will call
trivfs_open after trivfs_check_open_hook anyway.

Samuel
L
L
Ludovic Courtès wrote on 26 Nov 2022 16:35
(address . 58803@debbugs.gnu.org)(address . bug-hurd@gnu.org)
87fse57mpq.fsf@gnu.org
Hi,

Samuel Thibault <samuel.thibault@gnu.org> skribis:

Toggle quote (3 lines)
> It seems that replying on the web interface didn't work, so replying
> again here by mail.

Weird.

Toggle quote (17 lines)
> Ludovic Courtès, le mer. 26 oct. 2022 19:20:07 +0200, a ecrit:
>> ludo@childhurd ~$ mkfifo fifo
>> ludo@childhurd ~$ ls -l fifo
>> prw-r--r-- 1 ludo users 0 Oct 21 07:08 fifo
>> ludo@childhurd ~$ df ./fifo
>> df: Warning: cannot read table of mounted file systems: No such file or directory
>> ^C
>
> Using coreutils 9.1, I am not getting the issue any more:
>
> € mkfifo foo
> € ls -l foo
> prw-r--r-- 1 samy samy 0 Nov 26 11:47 foo
> € df ./foo
> Filesystem Size Used Avail Use% Mounted on
> - 20G 18G 1.8G 91% /

Oh nice. This may be a side effect of Coreutils commit
a3c04f8da14f0fe2a0561bf5562032b8ce5dafa9 (which made it in 9.0), which
opens the file with O_NONBLOCK.

Toggle quote (6 lines)
>> Maybe /hurd/fifo needs to implement ‘trivfs_check_open_hook’ to avoid
>> actually opening?
>
> I don't think it will change the behavior? trivfs_S_dir_lookup will call
> trivfs_open after trivfs_check_open_hook anyway.

Indeed, that was misguided, sorry for the confusion.

Ludo’.
L
L
Ludovic Courtès wrote on 18 Jul 2023 22:09
Re: bug#58803: coreutils-8.32 test failure on i586-gnu
(address . 58803-done@debbugs.gnu.org)
874jm1hthb.fsf@gnu.org
Ludovic Courtès <ludo@gnu.org> skribis:

Toggle quote (21 lines)
>> Ludovic Courtès, le mer. 26 oct. 2022 19:20:07 +0200, a ecrit:
>>> ludo@childhurd ~$ mkfifo fifo
>>> ludo@childhurd ~$ ls -l fifo
>>> prw-r--r-- 1 ludo users 0 Oct 21 07:08 fifo
>>> ludo@childhurd ~$ df ./fifo
>>> df: Warning: cannot read table of mounted file systems: No such file or directory
>>> ^C
>>
>> Using coreutils 9.1, I am not getting the issue any more:
>>
>> € mkfifo foo
>> € ls -l foo
>> prw-r--r-- 1 samy samy 0 Nov 26 11:47 foo
>> € df ./foo
>> Filesystem Size Used Avail Use% Mounted on
>> - 20G 18G 1.8G 91% /
>
> Oh nice. This may be a side effect of Coreutils commit
> a3c04f8da14f0fe2a0561bf5562032b8ce5dafa9 (which made it in 9.0), which
> opens the file with O_NONBLOCK.

This is confirmed to be fixed with Coreutils 9.1 as discussed at:


Closing!

Ludo’.
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 58803@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 58803
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch