lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Fri, 06 Oct 2023 11:19:58 +0200
From:   Sven Schnelle <svens@...ux.ibm.com>
To:     Mark Brown <broonie@...nel.org>
Cc:     Christian Brauner <brauner@...nel.org>,
        Jann Horn <jannh@...gle.com>, linux-kernel@...r.kernel.org,
        linux-fsdevel@...r.kernel.org
Subject: Re: Test failure from "file: convert to SLAB_TYPESAFE_BY_RCU"

Mark Brown <broonie@...nel.org> writes:

> For the past few days (I was away last week...) the fd-003-kthread.c
> test from the proc kselftests has been failing on arm64, this is an
> nfsroot system if that makes any odds.  The test output itself is:
>
>   # selftests: proc: fd-003-kthread
>   # fd-003-kthread: fd-003-kthread.c:113: test_readdir: Assertion `!de' failed.
>   # Aborted
>   not ok 3 selftests: proc: fd-003-kthread # exit=134
>
> I ran a bisect which pointed at the commit
>
>    d089d9d056c048303aedd40a7f3f26593ebd040c file: convert to SLAB_TYPESAFE_BY_RCU
>
> (I can't seem to find that on lore.) I've not done any further analysis
> of what the commit is doing or anything, though it does look like the
> bisect ran fairly smoothly and it looks at least plausibly related to
> the issue and reverting the commit on top of -next causes the test to
> start passing again.

I'm seeing the same with the strace test-suite on s390. The problem is
that /proc/*/fd now contains the file descriptors of the calling
process, and not the target process.

Old kernel:

# ls -l /proc/1/fd

total 0
lrwx------. 1 root root 64 Oct  6 11:11 0 -> /dev/null
lrwx------. 1 root root 64 Oct  6 11:11 1 -> /dev/null
lr-x------. 1 root root 64 Oct  6 11:12 10 -> /proc/1/mountinfo
lr-x------. 1 root root 64 Oct  6 11:12 11 -> anon_inode:inotify
lr-x------. 1 root root 64 Oct  6 11:12 13 -> anon_inode:inotify
lr-x------. 1 root root 64 Oct  6 11:12 14 -> /proc/swaps
lrwx------. 1 root root 64 Oct  6 11:12 15 -> 'socket:[5419]'
lrwx------. 1 root root 64 Oct  6 11:12 16 -> 'socket:[5420]'
[..]

# ls -l /proc/2/fd
total 0
#

New kernel:

# ls -l /proc/1/fd
total 0
lrwx------. 1 root root 64 Oct  6 11:14 0 -> /dev/null
lrwx------. 1 root root 64 Oct  6 11:14 1 -> /dev/null
lrwx------. 1 root root 64 Oct  6 11:14 2 -> /dev/null
lr-x------. 1 root root 64 Oct  6 11:14 3 -> /dev/kmsg

# ls -l /proc/2/fd
ls: cannot read symbolic link '/proc/2/fd/0': No such file or directory
ls: cannot read symbolic link '/proc/2/fd/1': No such file or directory
ls: cannot read symbolic link '/proc/2/fd/2': No such file or directory
ls: cannot read symbolic link '/proc/2/fd/3': No such file or directory
total 0
lrwx------. 1 root root 64 Oct  6 11:14 0
lrwx------. 1 root root 64 Oct  6 11:14 1
lrwx------. 1 root root 64 Oct  6 11:14 2
lr-x------. 1 root root 64 Oct  6 11:14 3

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ