← Back to team overview

tiomap-dev team mailing list archive

[Bug 1076447] Re: Pandaboard (Rev A2) ARM/OMAP4 upgrade to 12.10 from 12.04 fails

 

Running mongod under gdb, I get more detail on the SIGBUS:

Program received signal SIGBUS, Bus error.
0x00156404 in mongo::BSONElement::numberDouble() const ()
(gdb) bt
#0  0x00156404 in mongo::BSONElement::numberDouble() const ()
#1  0x0015fc14 in mongo::compareElementValues(mongo::BSONElement const&, mongo::BSONElement const&) ()
#2  0x0015b32e in mongo::BSONObj::woCompare(mongo::BSONObj const&, mongo::BSONObj const&, bool) const ()
#3  0x00161796 in mongo::BsonUnitTest::run() ()
#4  0x003507da in mongo::UnitTest::runTests() ()
#5  0x00153ad6 in main ()


Seems that Quantal is shipping with a rather old version of mongo, 2.0.6, it looks like this was fixed a while ago but only on the 2.2.x versions (the latest 2.0.8rc0 does not have an equivalent fix).

https://github.com/mongodb/mongo/commit/0575d874318ceb33b42b526d1076c659af0aaca5

Given that Precise shipped with 2.0.4, which also does not have this
change, I can only guess that it was a compiler change that has caused
this issue to suddenly appear.  None-the-less, it appears mongodb is
completely broken in Quantal for ARMv7 systems.

Additional information can be found in this thread:

https://jira.mongodb.org/browse/SERVER-1811

** Package changed: ubuntu => ubuntu-release-upgrader (Ubuntu)

-- 
You received this bug notification because you are a member of TI OMAP
Developers, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1076447

Title:
  Pandaboard (Rev A2) ARM/OMAP4 upgrade to 12.10 from 12.04 fails

Status in “ubuntu-release-upgrader” package in Ubuntu:
  New

Bug description:
  Tried to upgrade a 12.04 (Precise) Ubuntu-Server install running on an
  OMAP4 Pandaboard (rev A2) to 12.10 (Quantal) using:

  do-release-upgrade -d

  Upgrade appeared to proceed normally, but once the system had
  rebooted, I found a number of problems that were not present in the
  previous releases.

  NOTE: This particular system was installed on a 8GB SDHC card 6 months
  ago using the following 12.04 omap4-armhf image:

  http://cdimage.ubuntu.com/releases/12.04/release/ubuntu-12.04
  -preinstalled-server-armhf+omap4.img.gz

  And that prior to upgrading the system was completely up-to-date (i.e.
  apt-get update ; apt-get dist-upgrade ; reboot).

  NOTE2: I notice that in dmesg, the board is being detected as a
  OMAP4430 ES2.2, but the A2 revision actually has the ES2.1 silicon, I
  don't know if this perhaps is a contributing factor (see
  http://omappedia.org/wiki/PandaBoard_Revisions).

  NOTE3: I should point out that the root filesystem (ext4) has been
  [force] checked with fsck and there are no issues; also there is no
  encryption in use.

  
  1) mongod now fails to start with:

  [ 1147.582946] Alignment trap: not handling instruction ed900a00 at [<00156400>]
  [ 1147.591156] Unhandled fault: alignment exception (0x011) at 0x01b69f63

  ...

  Thu Nov  8 10:57:22 Backtrace:
  0x180b9c 0x34d95e 0x34dae4 0xb6c1e9f0
   mongod(_ZN5mongo15printStackTraceERSo+0xf) [0x180b9c]
   mongod(_ZN5mongo10abruptQuitEi+0x99) [0x34d95e]
   mongod(_ZN5mongo24abruptQuitWithAddrSignalEiP7siginfoPv+0x6b) [0x34dae4]
   /lib/arm-linux-gnueabihf/libc.so.6(__default_rt_sa_restorer_v2+0) [0xb6c1e9f0]

  2) Serial console is now broken after upgrade:

  The flash-kernel utility seemed to add the following preEnv.txt:

  bootargs=ro quiet splash root=UUID=...

  But this overrides the proper bootargs in boot.scr:

  setenv bootargs ro elevator=noop vram=40M mem=456M@0x80000000
  mem=512M@0xA0000000 root=UUID=... fixrtc quiet splash
  console=ttyO2,115200n8

  Which causes /etc/init/serial.conf to fail to start a getty for the
  console as it inspects /proc/cmdline looking for "console=", which it
  no longer finds because /proc/cmdline now contains the contents of
  preEnv.txt.

  Because preEnv.txt uses 'quiet', the last thing you see at the console
  while booting is:

  ## Booting kernel from Legacy Image at 80000000 ...
     Image Name:   kernel 3.5.0-213-omap4
     Image Type:   ARM Linux Kernel Image (uncompressed)
     Data Size:    4276896 Bytes = 4.1 MiB
     Load Address: 80008000
     Entry Point:  80008000
     Verifying Checksum ... OK
  ## Loading init Ramdisk from Legacy Image at 81600000 ...
     Image Name:   ramdisk 3.5.0-213-omap4
     Image Type:   ARM Linux RAMDisk Image (gzip compressed)
     Data Size:    5903851 Bytes = 5.6 MiB
     Load Address: 00000000
     Entry Point:  00000000
     Verifying Checksum ... OK
     Loading Kernel Image ... OK
  OK

  Starting kernel ...

  Uncompressing Linux... done, booting the kernel.

  There is no more output after this!  The workaround for this was to
  mount the boot partition mmcblk0p1 and rename preEnv.txt (although now
  u-boot complains that preEnv.txt is missing).

  3) System will no longer reboot

  Running the command /sbin/reboot causes the system to shutdown but
  then hang (and NOT restart), power must be removed, or the reset
  button pressed to get a restart.

  Once the system "stops" the status LEDs (STATUS1 and STATUS2) are both
  lit, as are both of the ethernet link/activity LEDs.

  4) Previously unseen "abnormal" messages in dmesg output:

  I'm now seeing "abnormal" messages in the dmesg output that I didn't
  see with previous releases (I don't know if these are significant
  issues or not!).

  [   10.550048] init: plymouth main process (246) killed by ABRT signal
  [   10.553527] init: plymouth-splash main process (449) terminated with status 2
  ...
  [   13.749603] init: failsafe main process (514) killed by TERM signal
  ...
  [   14.306884] init: plymouth-stop pre-start process (827) terminated with statu
  ...
  error: unexpectedly disconnected from boot status daemon

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubuntu-release-upgrader/+bug/1076447/+subscriptions