[PATCH v2 0/7] [PIDNS] Final

Ákos Uzonyi uzonyi.akos at gmail.com
Thu Jul 23 20:40:48 UTC 2020


On Wed, 22 Jul 2020 at 21:23, Dmitry V. Levin <ldv at altlinux.org> wrote:
> On Tue, Jul 21, 2020 at 11:19:18PM +0200, Ákos Uzonyi wrote:
> > From: Uzonyi Ákos <uzonyi.akos at gmail.com>
> >
> > I made the requested changes to my prevoius series.
> >
> > I ran a travis build [1], it seems to be fine, but on x86 all the pidns tests
> > are failing. According to the error message, ioctl(NS_GET_PARENT) errors
> > with ENOTTY. I have no idea why it happens, on my x86 system all tests pass.
> > If you know the reason of it, please tell me.
> >
> > [1] https://travis-ci.org/github/AkosUzonyi/strace/builds/710483396
>
> Although this looks odd, it must be something to do with the kernel.
> Old kernels do not have to support NS_GET_PARENT at all.

Apparently the kernel versions of the two failing builds are 4.4.0 and
5.3.0. The latter should support NS_GET_PARENT, as it was added in
4.9. Is it possible that a 5.3.0 kernel does not support
NS_GET_PARENT, or could it be just some travis bug? I'm asking because
I'm not sure if I should skip pidns tests by
"require_min_kernel_version_or_skip", or by testing at runtime whether
ioctl(NS_GET_PARENT) fails with ENOTTY.

> When this is the case, there is no need to complain every time
> NS_GET_PARENT is invoked.  I'd suggest to skip further NS_GET_PARENT
> invocations if the first one failed with ENOTTY.

Agreed.

> Anyway, I don't think strace is allowed to segfault when NS_GET_PARENT
> is not available.
>
> I've got another issue on x86 in my system when trying to build a package:
> verify-elf: ERROR: ./usr/bin/strace: uses non-LFS functions: __fxstat fopen open readdir
>
> Looks like some new pidns.c code introduced in this series does not use
> largefile_wrappers.h macros.

Thanks, I'll fix these problems.


More information about the Strace-devel mailing list