Closed Bug 753928 Opened 12 years ago Closed 6 years ago

Move B2G CI to x86 emulator

Categories

(Firefox OS Graveyard :: Emulator, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: jgriffin, Unassigned)

References

Details

We're currently using the arm emulator; we should use the x86 emulator as soon as it's working in mozilla-central.
Depends on: 871440
Is this task still valid?  Or maybe we can make emulator-x86 a target platform on tbpl first?  B2G emulator on x86 with kvm is way faster than on ARM.  Bug 871440 has fixed all Marionette reds.  Do you have a must-pass list that I can help?  What do you think?
I think we should continue to use arm emulators in TBPL, since that's closer to what we're shipping with.  But, we could consider adding x86 emulators as well, since that provides an easier debugging platform for developers.  Doing this would mean that we'd have to request a bunch of rel-eng work which I don't think is high priority, so this is not likely to happen in the very near term.

Probably the easiest way to see how well this would work would be to build an x86 emulator, package it, get rel-eng to upload it tooltool, then use it in a full try run.  I can work on getting our builder to make such a build.
Assignee: nobody → jgriffin
(In reply to Jonathan Griffin (:jgriffin) from comment #2)
> I think we should continue to use arm emulators in TBPL, since that's closer
> to what we're shipping with.  But, we could consider adding x86 emulators as
> well, since that provides an easier debugging platform for developers. 

Well, if it's a significant boost then it could help with test run speed. I'd be in favor of having the x86 emulator run our per-commit tests and have the arm emulator take a backseat and run periodically if that's possible.
Yeah, ahal and I just talked about that.  Let's look at the try run (after one is available) and see what kind of savings there is; if it's significant we can float this plan to dev.b2g.
Depends on: 874274
Depends on: 874379
No longer blocks: 875468
Depends on: 875468
Looks like Marionette will need to be updated to handle the x86 builds:

17:17:02     INFO -    File "/builds/slave/test/build/tests/marionette/marionette/b2gbuild.py", line 98, in check_file
17:17:02     INFO -      'B2G_HOME correctly?') % filePath)
17:17:02     INFO -  Exception: File not found: /builds/slave/test/build/emulator/b2g-distro/prebuilts/qemu-kernel/arm/kernel-qemu-armv7; did you pass the B2G home directory as the homedir parameter, or set B2G_HOME correctly?
Hacked emulator.py so that the try run should succeed:

https://tbpl.mozilla.org/?tree=Try&rev=65714fadf2c2
(In reply to Jonathan Griffin (:jgriffin) from comment #7)
> Hacked emulator.py so that the try run should succeed:
> 
> https://tbpl.mozilla.org/?tree=Try&rev=65714fadf2c2

This didn't go well; it looks like B2G isn't coming up on the emulator at all.  Will have to debug locally when I have time.
Deprecating Testing :: Infrastructure.
Component: Infrastructure → General
Not actively working on this
Assignee: jgriffin → nobody
Component: General → Emulator
Product: Testing → Boot2Gecko
Hi, anything I can help to at least get emulator-x86 online?  Recently a Google video[1] reveals that Google is now using emulator-x86 for their automation testing process.  Any idea, decision or progress here?  Thank you.

[1]: http://www.youtube.com/watch?v=IGavGSOSAoM
I'm flagging this myself to bring up at the next B2G engineering meeting.
Flags: needinfo?(jgriffin)
Things have changed a lot since this bug was first written.  All of the emulators used in CI are now produced by releng, and they don't have x86 emulators even in the queue.  According to sicking & gwagner, this isn't a priority (although we realize it would be really nice to have).

Are you primarily interested in being able to run tests locally against an x86 emulator, or having them in TBPL?
Flags: needinfo?(jgriffin)
(In reply to Jonathan Griffin (:jgriffin) from comment #13)
> Are you primarily interested in being able to run tests locally against an
> x86 emulator, or having them in TBPL?

ARM emulators are slow, extremely slow.  Running test cases in x86 emulators saves time and money for Mozilla and all its developers.
We're going to be moving to emulator-kk in Q2; I suggest we wait until then to look at the x86 emulator builds, since the new version of the emulator will likely bring its own challenges.
Depends on: 996449
Depends on: 996443
Depends on: 975442
Depends on: 996473
Firefox OS is not being worked on
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.