qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Could configure generate QEMU's linker scripts?


From: Richard Henderson
Subject: Re: [Qemu-devel] Could configure generate QEMU's linker scripts?
Date: Tue, 21 May 2013 11:14:43 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130514 Thunderbird/17.0.6

On 05/21/2013 10:51 AM, Ed Maste wrote:
> On 20 May 2013 13:21, Richard Henderson <address@hidden> wrote:
>> In general I believe that using the -Ttext-segment ADDR flag for ld
>> would completely obviate the need for even editing the link script.
> 
> That sounds cleaner, although there's a wrinkle for FreeBSD.  We're
> still using binutils version 2.17.50 in the base system, since it is
> the last one licensed under GPLv2, and it doesn't support the
> -Ttext-segment flag.  There is -Ttext but it still leaves some parts
> behind at the default load address.  I assume that the reason for
> changing the QEMU load address is to leave the default free for the
> guest application to use, making -Ttext unsuitable.
> 
> If we can't use an approach along the lines of my earlier sed script
> we'll just have to find a way to support -Ttext-segment in FreeBSD,
> either by having the original patch that introduced it made available
> under GPLv2, reimplementing the functionality, or by requiring use of
> a later binutils (from the FreeBSD ports tree).

Certainly using a decent binutils would be easiest.

Although for the purposes of getting the qemu application out of the virtual
address space that the *-bsd-user guest will want to use, it might be better to
use -fPIE.  At least on linux that tends to put the x86_64 host binary up in
(very) high memory.

The best long term solution is to be able to enable softmmu for *-user guests.
 It's the only way to make certain 64-on-32 combinations work, and the only way
to fix a myriad of problems that occur when the host and guest page sizes don't
match.  At which point it doesn't matter where the host binary resides.

> One oddity I noticed is that alpha and s390x seem to not use the ld
> script (with the comment "The default placement of the application is
> fine" in configure), so I'm not sure why QEMU includes those files.

I thought I deleted those when I changed the configure script...


r~




reply via email to

[Prev in Thread] Current Thread [Next in Thread]