Issue 1:
When a panic is received in a unit test that has a goyacc generated parser linked in,
the file:line number in the stack trace is not correct, and is probably nonexistant.

Attached is a minimal test case. Here is the output:

gunstar% make
go test
error syntax error
panic: ugh [recovered]
panic: ugh

goroutine 3 [running]:
testing._func_003(0x2b21cb3befa8, 0x2b21cb3be100, 0x2b21cb3befb8, 0x2b21cb3bef00)
/usr/lib/go/src/pkg/testing/testing.go:268 +0xf6
----- stack segment boundary -----
_/home/jaq/src/bug.TestBug()
/home/jaq/src/bug/parser.go:349 +0x86
testing.tRunner(0xf840000e00, 0x565728, 0x0, 0x0)
/usr/lib/go/src/pkg/testing/testing.go:273 +0x6f
created by testing.RunTests
/usr/lib/go/src/pkg/testing/testing.go:349 +0x788

goroutine 1 [chan receive]:
testing.RunTests(0x400c00, 0x565728, 0x100000001, 0x1, 0x55b4d8, ...)
/usr/lib/go/src/pkg/testing/testing.go:350 +0x7ab
testing.Main(0x400c00, 0x565728, 0x100000001, 0x56ab78, 0x0, ...)
/usr/lib/go/src/pkg/testing/testing.go:285 +0x7a
main.main()
/tmp/go-build623385241/_/home/jaq/src/bug/_test/_testmain.go:43 +0x91

goroutine 2 [syscall]:
created by runtime.main
/usr/lib/go/src/pkg/runtime/proc.c:221
exit status 2
FAIL _/home/jaq/src/bug 0.004s
make: *** [test] Error 1

Note the lines
_/home/jaq/src/bug.TestBug()
/home/jaq/src/bug/parser.go:349 +0x86

TestBug appears in main_test.go and the panic occurs at line 9.

However parser.go is only 339 lines long.

parser.go is full of //line parser.y:XX comments.

It appears that some line counter is not reset after parser.go is complete, as the stack
trace claims the panic occurs at line 349 of parser.go, which is 339 + 9 (+/- fencepost
errors)

Note that even putting //line main_test.go:2 at the top of main_test.go does not change
the behaviour of the output: the error is still claimed to be within parser.go.

You can build and run the test with the Makefile (necessary to run go tool yacc). The
parser.go file is not necessary to download to reproduce, but is included to see what I
generated.

This is the smallest test I could get -- possibly you can use a smaller .y file -- the
important part is to get the code linked in so a call to yyParse is necessary to prevent
the code from being orphaned and excluded.

I am using
go version weekly.2012-03-27 +ac7250065a04
installed freshly from launchpad's golang-tip package.

Attachments:

main_test.go (121 bytes)

Makefile (82 bytes)

parser.y (362 bytes)

parser.go (5496 bytes)

Issue 2:
go version devel +dd44d49 Wed Jun 17 20:00:06 2015 +0200 linux/amd64

$ uname -a
Linux gauss 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1 (2015-05-24) x86_64 GNU/Linux

./all.bash fails with

--- FAIL: TestCloneNEWUSERAndRemapNoRootDisableSetgroups (0.00s)
exec_linux_test.go:45: Cmd failed with err fork/exec /usr/bin/whoami: operation not permitted, output:
FAIL
FAIL syscall 0.020s

Output of

$ strace -f ./syscall.test -test.run=TestCloneNEWUSERAndRemapNoRootDisableSetgroups

is

execve("./syscall.test", ["./syscall.test", "-test.run=TestCloneNEWUSERAndRem"...], [/* 42 vars */]) = 0
brk(0) = 0x2187000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f74baf75000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=104291, ...}) = 0
mmap(NULL, 104291, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f74baf5b000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20o\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=137440, ...}) = 0
mmap(NULL, 2213008, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f74bab3a000
mprotect(0x7f74bab52000, 2093056, PROT_NONE) = 0
mmap(0x7f74bad51000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x7f74bad51000
mmap(0x7f74bad53000, 13456, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f74bad53000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0P\34\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1729984, ...}) = 0
mmap(NULL, 3836448, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f74ba791000
mprotect(0x7f74ba930000, 2097152, PROT_NONE) = 0
mmap(0x7f74bab30000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x19f000) = 0x7f74bab30000
mmap(0x7f74bab36000, 14880, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f74bab36000
close(3) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f74baf5a000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f74baf58000
arch_prctl(ARCH_SET_FS, 0x7f74baf58740) = 0
mprotect(0x7f74bab30000, 16384, PROT_READ) = 0
mprotect(0x7f74bad51000, 4096, PROT_READ) = 0
mprotect(0x7f74baf77000, 4096, PROT_READ) = 0
munmap(0x7f74baf5b000, 104291) = 0
set_tid_address(0x7f74baf58a10) = 6090
set_robust_list(0x7f74baf58a20, 24) = 0
rt_sigaction(SIGRTMIN, {0x7f74bab409f0, [], SA_RESTORER|SA_SIGINFO, 0x7f74bab498d0}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x7f74bab40a80, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7f74bab498d0}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
sched_getaffinity(0, 128, {f, 0, 0, 0, 0, 0, 0, 0}) = 64
mmap(0xc000000000, 65536, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xc000000000
munmap(0xc000000000, 65536) = 0
mmap(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f74baf18000
mmap(0xc820000000, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xc820000000
mmap(0xc81fff8000, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xc81fff8000
mmap(0xc000000000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xc000000000
mmap(NULL, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f74baf65000
mmap(NULL, 1439992, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f74badb8000
sigaltstack({ss_sp=0xc820002000, ss_flags=0, ss_size=32672}, NULL) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigaction(SIGHUP, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGHUP, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGHUP, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGINT, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGINT, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGINT, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGQUIT, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGQUIT, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGILL, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGILL, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGTRAP, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGTRAP, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGABRT, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGABRT, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGBUS, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGBUS, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGFPE, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGFPE, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGUSR1, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGUSR1, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGSEGV, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGSEGV, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGUSR2, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGUSR2, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGPIPE, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGPIPE, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGALRM, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGALRM, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGTERM, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGTERM, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGSTKFLT, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGSTKFLT, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGCHLD, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGCHLD, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGURG, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGURG, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGXCPU, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGXCPU, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGXFSZ, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGXFSZ, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGVTALRM, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGVTALRM, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGPROF, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGPROF, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGWINCH, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGWINCH, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGIO, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGIO, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGPWR, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGPWR, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGSYS, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGSYS, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRTMIN, NULL, {0x7f74bab409f0, [], SA_RESTORER|SA_SIGINFO, 0x7f74bab498d0}, 8) = 0
rt_sigaction(SIGRTMIN, NULL, {0x7f74bab409f0, [], SA_RESTORER|SA_SIGINFO, 0x7f74bab498d0}, 8) = 0
rt_sigaction(SIGRTMIN, {0x7f74bab409f0, [], SA_RESTORER|SA_STACK|SA_SIGINFO, 0x7f74bab498d0}, NULL, 8) = 0
rt_sigaction(SIGRT_1, NULL, {0x7f74bab40a80, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7f74bab498d0}, 8) = 0
rt_sigaction(SIGRT_1, NULL, {0x7f74bab40a80, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7f74bab498d0}, 8) = 0
rt_sigaction(SIGRT_1, {0x7f74bab40a80, [], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x7f74bab498d0}, NULL, 8) = 0
rt_sigaction(SIGRT_2, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_2, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_3, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_3, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_4, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_4, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_5, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_5, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_6, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_6, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_7, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_7, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_8, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_8, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_9, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_9, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_10, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_10, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_11, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_11, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_12, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_12, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_13, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_13, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_14, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_14, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_15, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_15, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_16, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_16, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_17, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_17, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_18, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_18, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_19, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_19, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_20, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_20, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_21, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_21, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_22, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_22, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_23, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_23, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_24, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_24, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_25, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_25, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_26, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_26, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_27, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_27, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_28, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_28, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_29, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_29, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_30, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_30, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_31, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_31, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigaction(SIGRT_32, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigaction(SIGRT_32, {0x45d120, ~[], SA_RESTORER|SA_STACK|SA_RESTART|SA_SIGINFO, 0x45d140}, NULL, 8) = 0
rt_sigprocmask(SIG_SETMASK, NULL, [], 8) = 0
brk(0) = 0x2187000
brk(0x21a8000) = 0x21a8000
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
mmap(NULL, 8392704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f74b9f90000
mprotect(0x7f74b9f90000, 4096, PROT_NONE) = 0
clone(Process 6091 attached
child_stack=0x7f74ba78ffb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f74ba7909d0, tls=0x7f74ba790700, child_tidptr=0x7f74ba7909d0) = 6091
[pid 6091] set_robust_list(0x7f74ba7909e0, 24 <unfinished ...>
[pid 6090] rt_sigprocmask(SIG_SETMASK, [], <unfinished ...>
[pid 6091] <... set_robust_list resumed> ) = 0
[pid 6090] <... rt_sigprocmask resumed> NULL, 8) = 0
[pid 6091] sigaltstack({ss_sp=0xc820042000, ss_flags=0, ss_size=32672} <unfinished ...>
[pid 6090] mmap(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0 <unfinished ...>
[pid 6091] <... sigaltstack resumed> , NULL) = 0
[pid 6090] <... mmap resumed> ) = 0x7f74bad78000
[pid 6091] rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] rt_sigprocmask(SIG_SETMASK, NULL, [], 8) = 0
[pid 6090] rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
[pid 6090] mmap(NULL, 8392704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f74b978f000
[pid 6090] mprotect(0x7f74b978f000, 4096, PROT_NONE <unfinished ...>
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6090] <... mprotect resumed> ) = 0
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] clone(Process 6092 attached
child_stack=0x7f74b9f8efb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f74b9f8f9d0, tls=0x7f74b9f8f700, child_tidptr=0x7f74b9f8f9d0) = 6092
[pid 6092] set_robust_list(0x7f74b9f8f9e0, 24 <unfinished ...>
[pid 6090] rt_sigprocmask(SIG_SETMASK, [], <unfinished ...>
[pid 6092] <... set_robust_list resumed> ) = 0
[pid 6090] <... rt_sigprocmask resumed> NULL, 8) = 0
[pid 6092] sigaltstack({ss_sp=0xc820052000, ss_flags=0, ss_size=32672} <unfinished ...>
[pid 6090] rt_sigprocmask(SIG_SETMASK, NULL, <unfinished ...>
[pid 6092] <... sigaltstack resumed> , NULL) = 0
[pid 6090] <... rt_sigprocmask resumed> [], 8) = 0
[pid 6092] rt_sigprocmask(SIG_SETMASK, [], <unfinished ...>
[pid 6090] rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], <unfinished ...>
[pid 6092] <... rt_sigprocmask resumed> NULL, 8) = 0
[pid 6090] <... rt_sigprocmask resumed> [], 8) = 0
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6090] mmap(NULL, 8392704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0 <unfinished ...>
[pid 6092] rt_sigprocmask(SIG_SETMASK, NULL, <unfinished ...>
[pid 6090] <... mmap resumed> ) = 0x7f74b8f8e000
[pid 6092] <... rt_sigprocmask resumed> [], 8) = 0
[pid 6090] mprotect(0x7f74b8f8e000, 4096, PROT_NONE <unfinished ...>
[pid 6092] mmap(NULL, 134217728, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0 <unfinished ...>
[pid 6090] <... mprotect resumed> ) = 0
[pid 6092] <... mmap resumed> ) = 0x7f74b0f8e000
[pid 6090] clone( <unfinished ...>
[pid 6092] munmap(0x7f74b0f8e000, 50798592Process 6093 attached
<unfinished ...>
[pid 6090] <... clone resumed> child_stack=0x7f74b978dfb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f74b978e9d0, tls=0x7f74b978e700, child_tidptr=0x7f74b978e9d0) = 6093
[pid 6093] set_robust_list(0x7f74b978e9e0, 24 <unfinished ...>
[pid 6090] rt_sigprocmask(SIG_SETMASK, [], <unfinished ...>
[pid 6093] <... set_robust_list resumed> ) = 0
[pid 6090] <... rt_sigprocmask resumed> NULL, 8) = 0
[pid 6093] sigaltstack({ss_sp=0xc82005a000, ss_flags=0, ss_size=32672} <unfinished ...>
[pid 6090] futex(0x721108, FUTEX_WAIT, 0, NULL <unfinished ...>
[pid 6093] <... sigaltstack resumed> , NULL) = 0
[pid 6092] <... munmap resumed> ) = 0
[pid 6093] rt_sigprocmask(SIG_SETMASK, [], <unfinished ...>
[pid 6092] munmap(0x7f74b8000000, 16310272 <unfinished ...>
[pid 6093] <... rt_sigprocmask resumed> NULL, 8) = 0
[pid 6092] <... munmap resumed> ) = 0
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6093] futex(0xc820030d08, FUTEX_WAIT, 0, NULL <unfinished ...>
[pid 6092] mprotect(0x7f74b4000000, 135168, PROT_READ|PROT_WRITE) = 0
[pid 6092] rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
[pid 6092] mmap(NULL, 8392704, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f74b878d000
[pid 6092] mprotect(0x7f74b878d000, 4096, PROT_NONE) = 0
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6092] clone( <unfinished ...>
[pid 6091] select(0, NULL, NULL, NULL, {0, 20}Process 6094 attached
<unfinished ...>
[pid 6094] set_robust_list(0x7f74b8f8d9e0, 24 <unfinished ...>
[pid 6092] <... clone resumed> child_stack=0x7f74b8f8cfb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f74b8f8d9d0, tls=0x7f74b8f8d700, child_tidptr=0x7f74b8f8d9d0) = 6094
[pid 6094] <... set_robust_list resumed> ) = 0
[pid 6092] rt_sigprocmask(SIG_SETMASK, [], <unfinished ...>
[pid 6094] sigaltstack({ss_sp=0xc820066000, ss_flags=0, ss_size=32672} <unfinished ...>
[pid 6092] <... rt_sigprocmask resumed> NULL, 8) = 0
[pid 6094] <... sigaltstack resumed> , NULL) = 0
[pid 6092] futex(0x721108, FUTEX_WAKE, 1 <unfinished ...>
[pid 6094] rt_sigprocmask(SIG_SETMASK, [], <unfinished ...>
[pid 6090] <... futex resumed> ) = 0
[pid 6094] <... rt_sigprocmask resumed> NULL, 8) = 0
[pid 6092] <... futex resumed> ) = 1
[pid 6094] select(0, NULL, NULL, NULL, {0, 100} <unfinished ...>
[pid 6090] futex(0xc820030d08, FUTEX_WAKE, 1 <unfinished ...>
[pid 6092] futex(0xc820030908, FUTEX_WAIT, 0, NULL <unfinished ...>
[pid 6090] <... futex resumed> ) = 1
[pid 6093] <... futex resumed> ) = 0
[pid 6090] futex(0x721108, FUTEX_WAIT, 0, NULL <unfinished ...>
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6090] <... futex resumed> ) = -1 EAGAIN (Resource temporarily unavailable)
[pid 6093] futex(0x721108, FUTEX_WAKE, 1 <unfinished ...>
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6093] <... futex resumed> ) = 0
[pid 6093] futex(0xc820030d08, FUTEX_WAIT, 0, NULL <unfinished ...>
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6094] <... select resumed> ) = 0 (Timeout)
[pid 6094] futex(0xc820062108, FUTEX_WAIT, 0, NULL <unfinished ...>
[pid 6090] mmap(NULL, 262144, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f74b874d000
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] futex(0xc820062108, FUTEX_WAKE, 1) = 1
[pid 6094] <... futex resumed> ) = 0
[pid 6094] select(0, NULL, NULL, NULL, {0, 100} <unfinished ...>
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] openat(AT_FDCWD, "/proc/sys/net/core/somaxconn", O_RDONLY|O_CLOEXEC <unfinished ...>
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6090] <... openat resumed> ) = 3
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] read(3, "128\n", 4096) = 4
[pid 6094] <... select resumed> ) = 0 (Timeout)
[pid 6090] read(3, <unfinished ...>
[pid 6094] futex(0xc820030d08, FUTEX_WAKE, 1 <unfinished ...>
[pid 6090] <... read resumed> "", 4092) = 0
[pid 6094] <... futex resumed> ) = 1
[pid 6090] close(3 <unfinished ...>
[pid 6094] futex(0xc820062108, FUTEX_WAIT, 0, NULL <unfinished ...>
[pid 6090] <... close resumed> ) = 0
[pid 6093] <... futex resumed> ) = 0
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6093] futex(0xc820030d08, FUTEX_WAIT, 0, NULL <unfinished ...>
[pid 6090] socket(PF_INET, SOCK_STREAM, IPPROTO_TCP <unfinished ...>
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] <... socket resumed> ) = 3
[pid 6090] close(3) = 0
[pid 6090] socket(PF_INET6, SOCK_STREAM, IPPROTO_TCP) = 3
[pid 6090] setsockopt(3, SOL_IPV6, IPV6_V6ONLY, [1], 4) = 0
[pid 6090] bind(3, {sa_family=AF_INET6, sin6_port=htons(0), inet_pton(AF_INET6, "::1", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28 <unfinished ...>
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6090] <... bind resumed> ) = 0
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] socket(PF_INET6, SOCK_STREAM, IPPROTO_TCP) = 4
[pid 6090] setsockopt(4, SOL_IPV6, IPV6_V6ONLY, [0], 4) = 0
[pid 6090] bind(4, {sa_family=AF_INET6, sin6_port=htons(0), inet_pton(AF_INET6, "::ffff:127.0.0.1", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = 0
[pid 6090] close(4) = 0
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6090] close(3 <unfinished ...>
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] <... close resumed> ) = 0
[pid 6090] futex(0xc820030d08, FUTEX_WAKE, 1) = 1
[pid 6093] <... futex resumed> ) = 0
[pid 6093] select(0, NULL, NULL, NULL, {0, 100} <unfinished ...>
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] getuid() = 1000
[pid 6090] getuid() = 1000
[pid 6090] getgid() = 1000
[pid 6090] stat("/proc/self/ns/user", <unfinished ...>
[pid 6093] <... select resumed> ) = 0 (Timeout)
[pid 6090] <... stat resumed> {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
[pid 6093] futex(0xc820062108, FUTEX_WAKE, 1 <unfinished ...>
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6094] <... futex resumed> ) = 0
[pid 6093] <... futex resumed> ) = 1
[pid 6094] futex(0xc820062108, FUTEX_WAIT, 0, NULL <unfinished ...>
[pid 6093] futex(0x744540, FUTEX_WAIT, 0, NULL <unfinished ...>
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] stat("/usr/local/bin/whoami", 0xc82009e240) = -1 ENOENT (No such file or directory)
[pid 6090] stat("/usr/bin/whoami", {st_mode=S_IFREG|0755, st_size=27112, ...}) = 0
[pid 6090] openat(AT_FDCWD, "/dev/null", O_RDONLY|O_CLOEXEC) = 3
[pid 6090] pipe2( <unfinished ...>
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6090] <... pipe2 resumed> [4, 5], O_CLOEXEC) = 0
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] pipe2([6, 7], O_CLOEXEC) = 0
[pid 6090] getpid() = 6090
[pid 6090] pipe2([8, 9], O_CLOEXEC) = 0
[pid 6090] clone( <unfinished ...>
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6090] <... clone resumed> child_stack=0, flags=CLONE_NEWUSER|SIGCHLD) = -1 EPERM (Operation not permitted)
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] close(6) = 0
[pid 6090] close(7) = 0
[pid 6090] close(3) = 0
[pid 6090] close(5) = 0
[pid 6090] close(4) = 0
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] futex(0xc820062108, FUTEX_WAKE, 1) = 1
[pid 6094] <... futex resumed> ) = 0
[pid 6094] futex(0xc820062108, FUTEX_WAIT, 0, NULL <unfinished ...>
[pid 6090] write(1, "--- FAIL: TestCloneNEWUSERAndRem"..., 170--- FAIL: TestCloneNEWUSERAndRemapNoRootDisableSetgroups (0.00s)
exec_linux_test.go:45: Cmd failed with err fork/exec /usr/bin/whoami: operation not permitted, output:
) = 170
[pid 6090] write(1, "FAIL\n", 5FAIL
<unfinished ...>
[pid 6091] <... select resumed> ) = 0 (Timeout)
[pid 6090] <... write resumed> ) = 5
[pid 6091] select(0, NULL, NULL, NULL, {0, 20} <unfinished ...>
[pid 6090] exit_group(1) = ?
[pid 6094] <... futex resumed> ) = ? <unavailable>
[pid 6094] +++ exited with 1 +++
[pid 6092] +++ exited with 1 +++
[pid 6091] +++ exited with 1 +++
[pid 6093] +++ exited with 1 +++
+++ exited with 1 +++