Support for MIPS architecture in Chromium

214 views
Skip to first unread message

Petar Jovanovic

unread,
Jun 1, 2012, 6:47:30 PM6/1/12
to Chromium-dev
Hello to everyone,

I would like to propose a small set of patches that will provide
support for building and running Chromium on MIPS platforms.
As you may have been aware, support for MIPS arch has already been
introduced in projects that Chromium embeds, such as V8, and the only
remaining thing to add is a small set of patches to Chromium itself,
mainly to GYP files, to enable successful compilation and execution
for MIPS target.

For this purpose, I have created a page

https://code.google.com/p/chromium/issues/detail?id=130022

to track the changes, and the first patch has been submitted for a
review at:

http://codereview.chromium.org/10448043/

It is a patch that adds support for atomic operations, and this code
is the same as v8/src/atomicops_internal_mips_gcc.h. Also, the same
file (atomicops_internal_mips_gcc.h) is used for Chromium stack in
MIPS Android.

Having another architecture supported for Chromium will raise a
question on this list what additional testing is sufficient for
future. Let me know what you think.

Kind regards,
Petar Jovanovic

Peter Kasting

unread,
Jun 1, 2012, 7:26:57 PM6/1/12
to pet...@mips.com, Chromium-dev
On Fri, Jun 1, 2012 at 3:47 PM, Petar Jovanovic <pet...@mips.com> wrote:
Having another architecture supported for Chromium will raise a
question on this list what additional testing is sufficient for
future. Let me know what you think.

One issue I foresee is that presumably we wouldn't have MIPS bots on the main waterfall, which would mean that MIPS could (and certainly would) get broken by other contributors, possibly frequently.

The infrastructure guys -- especially any associated with ARM support -- should weigh in on the wisdom of this.

PK 

Paweł Hajdan, Jr.

unread,
Jun 2, 2012, 3:18:29 AM6/2/12
to pkas...@google.com, pet...@mips.com, Chromium-dev
I think MIPS hardware is not that common, so even if we have waterfall and infrastructure for this, fixing possible breakages by team members could be difficult for non-trivial issues. We've hit some already for ARM (linker/compiler issues iirc), but fortunately we have people on team who are familiar with ARM. I'm not sure if that's the case for MIPS.

I'm not sure if we need a waterfall for every thing like that, especially at the early stages (if this port gains popularity, some problems from the above would disappear). For example, support for Linux distros to use system libraries is mostly on "best effort" basis, i.e. nobody guarantees it works, but patches are accepted to fix breakages. I think MIPS could be handled in a similar way.

--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-dev

Marc-Antoine Ruel

unread,
Jun 2, 2012, 8:36:58 AM6/2/12
to pet...@mips.com, Chromium-dev
Peter,

Can you provide an externally visible buildbot master running a
continuous integration builder that cross-compiles to MIPS? We don't
have time to do it but if you'd have such infrastructure, it'd help a
little for acceptation of patches. We wouldn't officially support it
but you'd have something to link to to know what are the problem you
are trying to solve.

I'd recommend creating a DMZ hosting a buildbot master and slave. Note
that both the master and slave processes can be hosted on the same
machine so it's really just a matter of configuring a VM somewhere to
do it, the cost is relatively low.

You'll find some information to kick start the setup:
http://www.chromium.org/developers/testing/chromium-build-infrastructure/getting-the-buildbot-source

M-A

2012/6/1 Petar Jovanovic <pet...@mips.com>:

Petar Jovanovic

unread,
Jun 2, 2012, 11:32:37 AM6/2/12
to Chromium-dev
@Pawel

I agree that this "best effort" model would be sufficient to start
with, and later we can discuss if any change to that would be required
or not.

@Marc-Antoine

We do plan to have an externaly visible buildbot for Chromium, same as
we already do for several projects including LLVM, v8, and so on.
You can already see the main MIPS public portal accessible at:

https://dmz-portal.mips.com/bb/

Petar

On Jun 2, 2:36 pm, Marc-Antoine Ruel <mar...@chromium.org> wrote:
> Peter,
>
> Can you provide an externally visible buildbot master running a
> continuous integration builder that cross-compiles to MIPS? We don't
> have time to do it but if you'd have such infrastructure, it'd help a
> little for acceptation of patches. We wouldn't officially support it
> but you'd have something to link to to know what are the problem you
> are trying to solve.
>
> I'd recommend creating a DMZ hosting a buildbot master and slave. Note
> that both the master and slave processes can be hosted on the same
> machine so it's really just a matter of configuring a VM somewhere to
> do it, the cost is relatively low.
>
> You'll find some information to kick start the setup:http://www.chromium.org/developers/testing/chromium-build-infrastruct...
> > Chromium Developers mailing list: chromium-...@chromium.org

alva

unread,
Jun 7, 2012, 3:47:28 AM6/7/12
to Chromium-dev
@Hajdan,
We did try to cross-compile browser for MIPS target, but we learned
that there is not such support. We found several platform specific
ports missing.
We agree that MIPS platforms are not as common as ARM, but millions of
embedded devices are running on MIPS. If we do not support MIPS in the
trunk, Chromium will never be integrated to MIPS.

As Petar metioned, if MIPS-guys will track the MIPS builds using
Buildbot, that would be a good step to push Chromium on MIPS.

Alva

Petar Jovanovic

unread,
Jun 15, 2012, 8:42:38 PM6/15/12
to Chromium-dev
If we are done with this part of discussion, can anybody take a look
at the change we uploaded two weeks ago?

http://codereview.chromium.org/10448043/

Thanks.

Petar

Brett Wilson

unread,
Jun 15, 2012, 11:27:10 PM6/15/12
to pet...@mips.com, Chromium-dev
On Fri, Jun 15, 2012 at 5:42 PM, Petar Jovanovic <pet...@mips.com> wrote:
> If we are done with this part of discussion, can anybody take a look
> at the change we uploaded two weeks ago?
>
> http://codereview.chromium.org/10448043/

Done.

Brett
Reply all
Reply to author
Forward
0 new messages