Bug#976943: golang-github-seccomp-libseccomp-golang: FTBFS on ppc64el (arch:all-only src pkg): dh_auto_test: error: cd obj-powerpc64le-linux-gnu && go test -vet=off -v -p 160 github.com/seccomp/libsec

2020-12-24 Thread Shengjing Zhu
Control: forwarded -1 https://github.com/seccomp/libseccomp-golang/issues/61
Control: severity -1 important

On Thu, Dec 24, 2020 at 9:12 PM Lucas Nussbaum  wrote:
>
> On 14/12/20 at 14:36 -0500, Reinhard Tartler wrote:
> >
> >
> > > === RUN   TestRuleAddAndLoad
> > > seccomp_test.go:588: Syscall should have returned error code!
> > > --- FAIL: TestRuleAddAndLoad (0.00s)
> >

This has been reported to upstream on Nov 29. There's no bug in the
library itself. Just the test doesn't take ppc64le into account. The
behavior of this library on ppc64le has no difference with the C
version libseccomp2.

So I'm downgrading this bug severity.

-- 
Shengjing Zhu



Bug#976943: golang-github-seccomp-libseccomp-golang: FTBFS on ppc64el (arch:all-only src pkg): dh_auto_test: error: cd obj-powerpc64le-linux-gnu && go test -vet=off -v -p 160 github.com/seccomp/libsec

2020-12-24 Thread Lucas Nussbaum
On 14/12/20 at 14:36 -0500, Reinhard Tartler wrote:
> 
> 
> > === RUN   TestRuleAddAndLoad
> > seccomp_test.go:588: Syscall should have returned error code!
> > --- FAIL: TestRuleAddAndLoad (0.00s)
> 
> 
> Source code is here: 
> https://sources.debian.org/src/golang-github-seccomp-libseccomp-golang/0.9.1-2/seccomp_test.go/#L529-L589
> 
> This test is basically loading a seccomp rule and expects that the
> getpid() syscall fails with the rule loaded, but in that test it seems
> to pass. This might mean that seccomp isn't working on that box.
> 
> Lucas, can you elaborate a bit what kind of test system you were using?
> Do you have any explanation what might be going on with the test setup that
> would make seccomp not work or only under certain conditions?

Hi,

This is a system running plain debian stable with an unstable chroot
(using sbuild). I cannot think of something strange. I tried disabling
SMT (hyperthreading) because with it enabled, the system has 160 visible
cores, which breaks some builds. But it did not change anything.

# uname -a
Linux drac-6.grenoble.grid5000.fr 4.19.0-13-powerpc64le #1 SMP Debian 
4.19.160-2 (2020-11-28) ppc64le GNU/Linux

I also tried with a Debian testing image and could reproduce it. Kernel
was linux-image-5.9.0-1-powerpc64le  5.9.1-1

Lucas



Bug#976943: golang-github-seccomp-libseccomp-golang: FTBFS on ppc64el (arch:all-only src pkg): dh_auto_test: error: cd obj-powerpc64le-linux-gnu && go test -vet=off -v -p 160 github.com/seccomp/libsec

2020-12-14 Thread Reinhard Tartler



> === RUN   TestRuleAddAndLoad
> seccomp_test.go:588: Syscall should have returned error code!
> --- FAIL: TestRuleAddAndLoad (0.00s)


Source code is here: 
https://sources.debian.org/src/golang-github-seccomp-libseccomp-golang/0.9.1-2/seccomp_test.go/#L529-L589

This test is basically loading a seccomp rule and expects that the
getpid() syscall fails with the rule loaded, but in that test it seems
to pass. This might mean that seccomp isn't working on that box.

Lucas, can you elaborate a bit what kind of test system you were using?
Do you have any explanation what might be going on with the test setup that
would make seccomp not work or only under certain conditions?

-rt



Bug#976943: golang-github-seccomp-libseccomp-golang: FTBFS on ppc64el (arch:all-only src pkg): dh_auto_test: error: cd obj-powerpc64le-linux-gnu && go test -vet=off -v -p 160 github.com/seccomp/libsec

2020-12-09 Thread Lucas Nussbaum
Source: golang-github-seccomp-libseccomp-golang
Version: 0.9.1-2
Severity: serious
Justification: FTBFS on ppc64el
Tags: bullseye sid ftbfs
Usertags: ftbfs-20201209 ftbfs-bullseye ftbfs-ppc64el

Hi,

During a rebuild of all packages in sid, your package failed to build
on ppc64el. At the same time, it did not fail on amd64.

I'm marking this bug as severity:serious since your package has only
Architecture:all binary packages, and should thus, in theory, build
everywhere. Failure to build on ppc64el might indicate a serious issue
in this package or in another package.

But feel free to downgrade or close if you believe that this is only a
build-time issue. (I would personnally prefer a severity:minor bug just to
track that the package can only be built on specific architectures.)

Relevant part (hopefully):
>  debian/rules build
> dh build --buildsystem=golang --with=golang
>dh_update_autotools_config -O--buildsystem=golang
>dh_autoreconf -O--buildsystem=golang
>dh_auto_configure -O--buildsystem=golang
>dh_auto_build -O--buildsystem=golang
>   cd obj-powerpc64le-linux-gnu && go install -trimpath -v -p 160 
> github.com/seccomp/libseccomp-golang
> internal/cpu
> internal/unsafeheader
> runtime/internal/sys
> unicode/utf8
> math/bits
> runtime/internal/atomic
> internal/race
> sync/atomic
> runtime/cgo
> unicode
> runtime/internal/math
> internal/testlog
> internal/bytealg
> math
> runtime
> internal/reflectlite
> sync
> sort
> errors
> internal/oserror
> io
> strconv
> syscall
> strings
> reflect
> internal/syscall/unix
> internal/syscall/execenv
> time
> internal/poll
> internal/fmtsort
> os
> fmt
> github.com/seccomp/libseccomp-golang
>dh_auto_test -O--buildsystem=golang
>   cd obj-powerpc64le-linux-gnu && go test -vet=off -v -p 160 
> github.com/seccomp/libseccomp-golang
> === RUN   TestVersionError
> --- PASS: TestVersionError (0.00s)
> === RUN   TestGetApiLevel
> Got API level of 4
> --- PASS: TestGetApiLevel (0.00s)
> === RUN   TestSetApiLevel
> --- PASS: TestSetApiLevel (0.00s)
> === RUN   TestActionSetReturnCode
> --- PASS: TestActionSetReturnCode (0.00s)
> === RUN   TestSyscallGetName
> Got name of syscall 0x1 on native arch as exit
> --- PASS: TestSyscallGetName (0.00s)
> === RUN   TestSyscallGetNameByArch
> --- PASS: TestSyscallGetNameByArch (0.00s)
> === RUN   TestGetSyscallFromName
> Got syscall number of write on native arch as 4
> --- PASS: TestGetSyscallFromName (0.00s)
> === RUN   TestGetSyscallFromNameByArch
> Got syscall number of write on AMD64 as 1
> --- PASS: TestGetSyscallFromNameByArch (0.00s)
> === RUN   TestMakeCondition
> --- PASS: TestMakeCondition (0.00s)
> === RUN   TestGetNativeArch
> Got native arch of system as ppc64le
> --- PASS: TestGetNativeArch (0.00s)
> === RUN   TestFilterCreateRelease
> --- PASS: TestFilterCreateRelease (0.00s)
> === RUN   TestFilterReset
> --- PASS: TestFilterReset (0.00s)
> === RUN   TestFilterArchFunctions
> --- PASS: TestFilterArchFunctions (0.00s)
> === RUN   TestFilterAttributeGettersAndSetters
> --- PASS: TestFilterAttributeGettersAndSetters (0.00s)
> === RUN   TestMergeFilters
> --- PASS: TestMergeFilters (0.00s)
> === RUN   TestRuleAddAndLoad
> seccomp_test.go:588: Syscall should have returned error code!
> --- FAIL: TestRuleAddAndLoad (0.00s)
> === RUN   TestLogAct
> seccomp_test.go:601: DM - skipping failing test
> --- SKIP: TestLogAct (0.00s)
> === RUN   TestCreateActKillThreadFilter
> --- PASS: TestCreateActKillThreadFilter (0.00s)
> === RUN   TestCreateActKillProcessFilter
> --- PASS: TestCreateActKillProcessFilter (0.00s)
> FAIL
> FAIL  github.com/seccomp/libseccomp-golang0.006s
> FAIL
> dh_auto_test: error: cd obj-powerpc64le-linux-gnu && go test -vet=off -v -p 
> 160 github.com/seccomp/libseccomp-golang returned exit code 1

The full build log is available from:
   
http://qa-logs.debian.net/2020/12/09/golang-github-seccomp-libseccomp-golang_0.9.1-2_unstable.log

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please marking it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with me
so that we can identify if something relevant changed in the meantime.

About the archive rebuild: The rebuild was done on a Power8 cluster part of the
Grid'5000 testbed. Hardware specs: 
https://www.grid5000.fr/w/Grenoble:Hardware#drac