From: Kumba <kumba@gentoo.org>
To: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: linux-mips@linux-mips.org, vagabon.xyz@gmail.com
Subject: Re: Building 64 bit kernel on Cobalt
Date: Fri, 23 Mar 2007 23:31:57 -0400 [thread overview]
Message-ID: <46049BAD.1010705@gentoo.org> (raw)
In-Reply-To: <20070324.002440.93023010.anemo@mba.ocn.ne.jp>
Atsushi Nemoto wrote:
>
> Let me ask again: Why do you want to use CONFIG_BUILD_ELF64=y ?
>
> If your board use CKSEG0 load address, I can not see any point setting
> CONFIG_BUILD_ELF64=y. I think the description in Kconfig (and the
> name of CONFIG_BUILD_ELF64 itself) should be changed to make people
> enable it only if really needed. And it is already done by Franck's
> pending patchset.
Well, the story, as it's been explained to me a half-dozen times, cause I keep
forgetting, is that three particular machines, IP22, IP32 (R5K/Nevada/RM7K), and
apparently cobalt, ran best when built with the old -mabi=o64 hack, because it
generated less instructions for certain routines (loads, I think). Especially
in the case of cobalt, you lack a L2 cache, so you want to squeeze every thing
possible out of the cpu.
Well, o64 went away as we all know. It was never a favourable option for very
good reasons (although I used it right up until it died and I was forced off of
it). The replacement for it, that was more preferred and resulted in similar
code was building a kernel for any of these three systems using
CONFIG_BUILD_ELF64 + -msym32 (auto selected in the Makefile) + the make
vmlinux.32 target. I believe this method is what Debian uses for building their
mips kernels for SGI systems, but don't quote me on that. If someone from
Debian wants to comment, please do.
The idea being to stuff 64bit code into a 32bit object/kernel, since at least
one of these systems, namely IP22, will only accept a 32bit object for booting.
It can't understand 64bit kernel objects. Cobalt's colo bootloader will
handle 64bit I believe, but my experience a year or two ago showed that a
32bit/64bit hybrid kernel ran much faster than a pure 64bit kernel, simply due
to the decreased overhead. IP32's prom usually has no problem booting either,
but I seem to also see a minor improvement in console redraw speed under the
hyrbid kernel as well.
The issue is, if this method is broken, what's its replacement? Is this
replacement capable of generating the same (or near enough) code w/o incurring a
penalty hit? I mean, part of the reason for discussion going on for as long as
it has been is the relative confusion surrounding the proper way to build these
kernels for these particular systems. If someone can hash that out, I think
we'll all figure out what track to get on and get something in the tree that
works, and works well.
--Kumba
--
Gentoo/MIPS Team Lead
"Such is oft the course of deeds that move the wheels of the world: small hands
do them because they must, while the eyes of the great are elsewhere." --Elrond
next prev parent reply other threads:[~2007-03-24 3:32 UTC|newest]
Thread overview: 110+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-03-04 23:18 Building 64 bit kernel on Cobalt Jim Gifford
2007-03-04 23:27 ` Ralf Baechle
2007-03-08 6:11 ` Jim Gifford
2007-03-08 8:46 ` Jim Gifford
2007-03-08 12:48 ` Franck Bui-Huu
2007-03-08 16:11 ` Jim Gifford
2007-03-13 0:57 ` Jim Gifford
2007-03-13 10:38 ` Franck Bui-Huu
2007-03-13 11:53 ` Ralf Baechle
2007-03-18 21:52 ` Jim Gifford
2007-03-19 1:12 ` Atsushi Nemoto
2007-03-19 5:20 ` Jim Gifford
2007-03-19 6:07 ` Atsushi Nemoto
2007-03-19 10:08 ` Franck Bui-Huu
2007-03-19 10:17 ` Franck Bui-Huu
2007-03-21 17:07 ` Atsushi Nemoto
2007-03-21 19:31 ` Franck Bui-Huu
2007-03-23 13:47 ` Kumba
2007-03-23 15:24 ` Atsushi Nemoto
2007-03-24 3:31 ` Kumba [this message]
2007-03-24 14:47 ` Atsushi Nemoto
2007-03-24 23:16 ` Thiemo Seufer
2007-03-25 7:25 ` [PATCH]: Remove CONFIG_BUILD_ELF64 entirely Kumba
2007-03-25 14:45 ` Thiemo Seufer
2007-03-26 11:35 ` Maciej W. Rozycki
2007-03-26 11:56 ` Ralf Baechle
2007-03-26 12:09 ` Maciej W. Rozycki
2007-03-26 12:34 ` Ralf Baechle
2007-03-25 16:10 ` Atsushi Nemoto
2007-03-25 16:40 ` Ralf Baechle
2007-03-26 9:14 ` Franck Bui-Huu
2007-03-26 9:42 ` Thiemo Seufer
2007-03-25 16:59 ` Kumba
2007-03-25 17:07 ` Atsushi Nemoto
2007-03-25 18:33 ` Kumba
2007-03-26 10:36 ` Atsushi Nemoto
2007-03-26 13:48 ` Kumba
2007-03-26 14:43 ` Atsushi Nemoto
2007-03-27 0:51 ` Kumba
2007-03-27 14:53 ` Atsushi Nemoto
2007-03-27 17:54 ` Ilya A. Volynets-Evenbakh
2007-03-28 15:14 ` Atsushi Nemoto
2007-03-27 19:01 ` Thiemo Seufer
2007-03-28 13:26 ` Kumba
2007-03-28 15:24 ` Atsushi Nemoto
2007-03-29 1:50 ` Kumba
2007-03-29 14:53 ` Atsushi Nemoto
2007-03-30 6:18 ` Kumba
2007-03-30 2:20 ` Kumba
2007-02-18 20:00 ` IP32 prom crashes due to __pa() funkiness Kumba
2007-03-01 4:33 ` Kumba
2007-03-01 9:39 ` Franck Bui-Huu
2007-03-10 9:41 ` [PATCH], " peter fuerst
2007-03-17 19:52 ` Kumba
2007-03-17 21:48 ` Arnaud Giersch
2007-03-18 2:04 ` Kumba
2007-03-19 13:53 ` Franck Bui-Huu
2007-03-19 14:07 ` Thiemo Seufer
2007-03-19 14:19 ` Franck Bui-Huu
2007-03-19 14:17 ` Franck Bui-Huu
2007-03-19 14:24 ` Kumba
2007-03-19 14:45 ` Thiemo Seufer
2007-03-19 14:46 ` Atsushi Nemoto
2007-03-19 21:35 ` Franck Bui-Huu
2007-03-20 14:10 ` Kumba
2007-03-23 15:12 ` Franck Bui-Huu
[not found] ` <45FC3923.2080207@gentoo.org>
2007-03-18 9:42 ` peter fuerst
2007-03-18 21:26 ` Kumba
2007-03-18 21:37 ` Kumba
2007-03-18 22:44 ` Kumba
2007-03-19 13:57 ` Franck Bui-Huu
2007-03-30 3:01 ` [PATCH]: Remove CONFIG_BUILD_ELF64 entirely Atsushi Nemoto
2007-03-30 5:35 ` Kumba
2007-03-30 6:09 ` Atsushi Nemoto
2007-09-26 2:08 ` CONFIG_BUILD_ELF64 broken on IP32 since 2.6.20 Atsushi Nemoto
2007-09-26 5:59 ` Martin Michlmayr
2007-09-26 6:19 ` Giuseppe Sacco
2007-09-27 0:24 ` Thiemo Seufer
2007-09-26 9:14 ` Franck Bui-Huu
2007-09-26 14:42 ` Atsushi Nemoto
2007-03-25 22:19 ` [PATCH]: Remove CONFIG_BUILD_ELF64 entirely Ralf Baechle
2007-03-26 13:25 ` Atsushi Nemoto
2007-03-26 13:54 ` Franck Bui-Huu
2007-03-26 14:48 ` Atsushi Nemoto
2007-03-26 15:31 ` Franck Bui-Huu
2007-03-26 15:45 ` Atsushi Nemoto
2007-03-26 16:07 ` Franck Bui-Huu
2007-03-27 3:12 ` Atsushi Nemoto
2007-03-27 8:01 ` Franck Bui-Huu
2007-03-26 15:56 ` Thiemo Seufer
2007-03-26 9:02 ` Franck Bui-Huu
2007-03-25 15:40 ` Building 64 bit kernel on Cobalt Atsushi Nemoto
-- strict thread matches above, loose matches on Subject: below --
2007-09-25 18:13 CONFIG_BUILD_ELF64 broken on IP32 since 2.6.20 Martin Michlmayr
2007-09-25 18:32 ` sknauert
2007-09-25 18:43 ` Martin Michlmayr
2007-09-25 18:56 ` sknauert
2007-09-26 8:03 ` Franck Bui-Huu
2007-09-26 9:14 ` Martin Michlmayr
2007-09-26 9:54 ` Franck Bui-Huu
2007-09-26 10:24 ` Martin Michlmayr
2007-09-26 11:32 ` Maciej W. Rozycki
2007-09-26 13:34 ` Franck Bui-Huu
2007-09-26 13:46 ` Martin Michlmayr
2007-09-26 14:49 ` Maciej W. Rozycki
2007-09-26 15:34 ` Atsushi Nemoto
2007-09-26 15:47 ` Maciej W. Rozycki
2007-09-27 8:11 ` Franck Bui-Huu
2007-09-27 11:10 ` Maciej W. Rozycki
2007-09-27 13:36 ` Ralf Baechle
2007-09-27 13:47 ` Franck Bui-Huu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=46049BAD.1010705@gentoo.org \
--to=kumba@gentoo.org \
--cc=anemo@mba.ocn.ne.jp \
--cc=linux-mips@linux-mips.org \
--cc=vagabon.xyz@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.