From: Nishanth Aravamudan <nacc@us.ibm.com>
To: Blaisorblade <blaisorblade@yahoo.it>
Cc: jdike@addtoit.com, user-mode-linux-devel@lists.sourceforge.net
Subject: Re: [uml-devel] [PATCH] Fix UML build on i386 Ubuntu Dapper
Date: Thu, 29 Jun 2006 13:56:26 -0700 [thread overview]
Message-ID: <20060629205626.GH4488@us.ibm.com> (raw)
In-Reply-To: <200606281213.21696.blaisorblade@yahoo.it>
On 28.06.2006 [12:13:21 +0200], Blaisorblade wrote:
> On Wednesday 28 June 2006 02:47, Nishanth Aravamudan wrote:
> > On 27.06.2006 [11:31:28 -0700], Nishanth Aravamudan wrote:
> > > On 27.06.2006 [16:56:13 +0200], Blaisorblade wrote:
> > > > On Tuesday 27 June 2006 00:02, Nishanth Aravamudan wrote:
> > > > > Hi Jeff,
> > > > >
> > > > > I run an x86_64 kernel with i386 userspace (Ubuntu Dapper) and
> > > > > decided to try out UML today. I found that UML wasn't quite
> > > > > aware of biarch compilers (which Ubuntu i386 ships). A fix
> > > > > similar to what was done for x86_64 should probably be
> > > > > committed (see
> > > > > http://marc.theaimsgroup.com/?l=linux-kernel&m=113425940204010&w=2).
> > > >
> > > > Ok, it seemed strange but I understand the stuff... that's very
> > > > interesting as this is the setup I'd wished to have since ages.
> > > > I'll switch to it ASAP...
> > >
> > > Indeed :)
> > >
> > > > > Without the FLAGS changes, the build will fail at a number of
> > > > > places and without the LINK change, the final link will fail.
> > > > >
> > > > > Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
> > > >
> > > > The first hunk (#undef i386) should be unnecessary given you
> > > > specify -m64 (add it to CPPFLAGS too). Also it can/could be
> > > > problematic for
> >
> > Hrm, I somehow overlooked the CPPFLAGS bit. Is it necessary? That
> > wasn't changed for x86_64 and having not changed it for UML, it
> > doesn't appear to have prevented the build from working on both
> > x86_64 and i386 SUBARCHs here.
>
> It shouldn't go in the general CPPFLAGS indeed. I think that -m64 in
> the preprocessor command used to build vmlinux.lds.S would be cleaner
> than #undef i386... test it by preprocessing by hand and report, I'll
> code the CPPFLAGS_vmlinux.lds.S = -m64 assignment (if it is exactly
> this way) if it works.
Just for clarity's sake, the reason the #undef is there, as far as I can
tell, is otherwise the preprocessor (I'm assuming) goes and makes the
output specification as 1:x86_64 instead of i386:x86_64. If one were
then to go and manually change the 1 to i386 and then reissue make, the
kernel will build just fine.
I removed the #undef i386 from vmlinux.ld.S and added a
CPPFLAGS += -m64
to arch/um/Makefile-x86_64
The build completed fine here.
I wonder if a patch against x86_64 to remove the #undef there should
also be applied? I'll take a look.
Thanks,
Nish
---
I run an x86_64 kernel with i386 userspace (Ubuntu Dapper) and decided
to try out UML today. I found that UML wasn't quite aware of biarch
compilers (which Ubuntu i386 ships). A fix similar to what was done for
x86_64 should probably be committed (see
http://marc.theaimsgroup.com/?l=linux-kernel&m=113425940204010&w=2).
Without the FLAGS changes, the build will fail at a number of places and
without the LINK change, the final link will fail.
This is the patch I'm currently using. I don't know if putting the
CPPFLAGS in the Makefile-x86_64 is bad or not, I'll leave that up to
those with more knowledge to decide.
Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
diff -urpN 2.6.17/arch/um/Makefile-x86_64 2.6.17-dev/arch/um/Makefile-x86_64
--- 2.6.17/arch/um/Makefile-x86_64 2006-06-17 18:49:35.000000000 -0700
+++ 2.6.17-dev/arch/um/Makefile-x86_64 2006-06-29 13:47:22.000000000 -0700
@@ -6,9 +6,12 @@ START := 0x60000000
#We #undef __x86_64__ for kernelspace, not for userspace where
#it's needed for headers to work!
-CFLAGS += -U__$(SUBARCH)__ -fno-builtin
-USER_CFLAGS += -fno-builtin
+CFLAGS += -U__$(SUBARCH)__ -fno-builtin -m64
+USER_CFLAGS += -fno-builtin -m64
CHECKFLAGS += -m64
+AFLAGS += -m64
+LDFLAGS += -m elf_x86_64
+CPPFLAGS += -m64
ELF_ARCH := i386:x86-64
ELF_FORMAT := elf64-x86-64
@@ -16,3 +19,4 @@ ELF_FORMAT := elf64-x86-64
# Not on all 64-bit distros /lib is a symlink to /lib64. PLD is an example.
LINK-$(CONFIG_LD_SCRIPT_DYN) += -Wl,-rpath,/lib64
+LINK-y += -m64
--
Nishanth Aravamudan <nacc@us.ibm.com>
IBM Linux Technology Center
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel
next prev parent reply other threads:[~2006-06-29 20:56 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-06-26 22:02 [uml-devel] [PATCH] Fix UML build on i386 Ubuntu Dapper Nishanth Aravamudan
2006-06-27 14:56 ` Blaisorblade
2006-06-27 18:31 ` Nishanth Aravamudan
2006-06-28 0:47 ` Nishanth Aravamudan
2006-06-28 10:13 ` Blaisorblade
2006-06-29 20:56 ` Nishanth Aravamudan [this message]
2006-06-29 21:49 ` Nishanth Aravamudan
2006-07-07 0:52 ` Jeff Dike
2006-06-30 0:29 ` Paolo Giarrusso
2006-06-30 1:05 ` Jeff Dike
2006-06-28 2:11 ` Jeff Dike
2006-06-28 2:54 ` Nishanth Aravamudan
2006-06-28 3:43 ` Jeff Dike
2006-06-28 3:50 ` Nishanth Aravamudan
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=20060629205626.GH4488@us.ibm.com \
--to=nacc@us.ibm.com \
--cc=blaisorblade@yahoo.it \
--cc=jdike@addtoit.com \
--cc=user-mode-linux-devel@lists.sourceforge.net \
/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.