← Back to team overview

touch-packages team mailing list archive

[Bug 1472650] Re: [arm64] gccgo runtime crashes with CONFIG_ARM64_PGTABLE_LEVELS=4

 

Verified:

ubuntu@cvm2s:~$ juju help
p=0xffffa6947000
fatal error: runtime_lfstackpush: invalid pointer

runtime stack:

        :0

        :0

        :0

        :0

        :0

        :0

        :0

        :0

        :0

        :0

goroutine 1 [garbage collection]:
github.com_juju_cmd.DefaultContext
	/build/juju-core-qiO5uV/juju-core-1.24.7/src/github.com/juju/cmd/cmd.go:261
main.Main
	/build/juju-core-qiO5uV/juju-core-1.24.7/src/github.com/juju/juju/cmd/juju/main.go:54
main.main
	/build/juju-core-qiO5uV/juju-core-1.24.7/src/github.com/juju/juju/cmd/juju/main.go:233

goroutine 3 [syscall]:
	goroutine in C code; stack unavailable

goroutine 12 [runnable]:
ubuntu@cvm2s:~$ sudo apt-get install libgo5 -y
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  devio libuuid-perl linux-base
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  gcc-4.9-base libgcc1
The following packages will be upgraded:
  gcc-4.9-base libgcc1 libgo5
3 upgraded, 0 newly installed, 0 to remove and 17 not upgraded.
Need to get 2,337 kB of archives.
After this operation, 17.4 kB of additional disk space will be used.
Get:1 http://ports.ubuntu.com/ubuntu-ports/ trusty-proposed/main libgo5 arm64 4.9.3-0ubuntu4 [2,291 kB]
Get:2 http://ports.ubuntu.com/ubuntu-ports/ trusty-proposed/main gcc-4.9-base arm64 4.9.3-0ubuntu4 [15.2 kB]
Get:3 http://ports.ubuntu.com/ubuntu-ports/ trusty-proposed/main libgcc1 arm64 1:4.9.3-0ubuntu4 [30.7 kB]
Fetched 2,337 kB in 11s (212 kB/s)                                             
(Reading database ... 70242 files and directories currently installed.)
Preparing to unpack .../libgo5_4.9.3-0ubuntu4_arm64.deb ...
Unpacking libgo5:arm64 (4.9.3-0ubuntu4) over (4.9.1-0ubuntu1) ...
Preparing to unpack .../gcc-4.9-base_4.9.3-0ubuntu4_arm64.deb ...
Unpacking gcc-4.9-base:arm64 (4.9.3-0ubuntu4) over (4.9.1-0ubuntu1) ...
Setting up gcc-4.9-base:arm64 (4.9.3-0ubuntu4) ...
(Reading database ... 70242 files and directories currently installed.)
Preparing to unpack .../libgcc1_1%3a4.9.3-0ubuntu4_arm64.deb ...
Unpacking libgcc1:arm64 (1:4.9.3-0ubuntu4) over (1:4.9.1-0ubuntu1) ...
Setting up libgcc1:arm64 (1:4.9.3-0ubuntu4) ...
Setting up libgo5:arm64 (4.9.3-0ubuntu4) ...
Processing triggers for libc-bin (2.19-0ubuntu6.6) ...
ubuntu@cvm2s:~$ juju help
Juju -- devops distilled
https://juju.ubuntu.com/

Juju provides easy, intelligent service orchestration on top of environments
such as Amazon EC2, HP Cloud, OpenStack, MaaS, or your own local machine.

Basic commands:
  juju init             generate boilerplate configuration for juju environments
  juju bootstrap        start up an environment from scratch

  juju deploy           deploy a new service
  juju add-relation     add a relation between two services
  juju expose           expose a service

  juju help bootstrap   more help on e.g. bootstrap command
  juju help commands    list all commands
  juju help glossary    glossary of terms
  juju help topics      list all help topics

Provider information:
  juju help azure-provider       use on Windows Azure
  juju help ec2-provider         use on Amazon EC2
  juju help hpcloud-provider     use on HP Cloud
  juju help local-provider       use on this computer
  juju help openstack-provider   use on OpenStack


** Tags removed: verification-needed
** Tags added: verification-done

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to gccgo-4.9 in Ubuntu.
https://bugs.launchpad.net/bugs/1472650

Title:
  [arm64] gccgo runtime crashes with CONFIG_ARM64_PGTABLE_LEVELS=4

Status in gcc:
  Unknown
Status in gcc-5 package in Ubuntu:
  Fix Released
Status in gccgo-4.9 package in Ubuntu:
  Invalid
Status in gccgo-5 package in Ubuntu:
  Invalid
Status in gccgo-4.9 source package in Trusty:
  Fix Committed
Status in gccgo-4.9 source package in Vivid:
  Invalid
Status in gccgo-5 source package in Vivid:
  Fix Released
Status in gccgo-4.9 source package in Wily:
  Invalid

Bug description:
  [Impact]
  Various go-based packages crash on startup on arm64 when booted with a kernel where CONFIG_ARM64_PGTABLE_LEVELS=4. LXD, docker and juju are examples.

  Ubuntu does not ship with this config, so it is currently not
  impacted. However, we would like to enable this config to add new
  hardware support in 15.10. The 15.10 kernel will eventually be
  provided in trusty as an lts backport, at which point this will begin
  to break users.

  [Test Case]
  Boot an arm64 system with CONFIG_ARM64_PGTABLE_LEVELS=4 enabled in the kernel. Install docker.io and run "docker help". If it fails, you'll see "fatal error: runtime_lfstackpush" followed by a stack trace. If it succeeds, you'll get normal help output.

  [Regression Risk]
  The risk of regression is lessened by testing this release on existing Ubuntu kernels w/ 3 level page tables.

To manage notifications about this bug go to:
https://bugs.launchpad.net/gcc/+bug/1472650/+subscriptions