* [Qemu-devel] Re: [COMMIT e20a8df] Compile fdc, escc and SCSI controllers only once
[not found] <200905211555.n4LFtklw030900@d01av03.pok.ibm.com>
@ 2009-05-21 16:45 ` Jan Kiszka
2009-05-21 18:35 ` Blue Swirl
0 siblings, 1 reply; 5+ messages in thread
From: Jan Kiszka @ 2009-05-21 16:45 UTC (permalink / raw)
To: Blue Swirl; +Cc: qemu-devel
[-- Attachment #1: Type: text/plain, Size: 777 bytes --]
Anthony Liguori wrote:
> From: Blue Swirl <blauwirbel-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
>
> Signed-off-by: Blue Swirl <blauwirbel-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
>
> diff --git a/Makefile.hw b/Makefile.hw
> index 87675fd..6da37a9 100644
> --- a/Makefile.hw
> +++ b/Makefile.hw
> @@ -21,7 +21,13 @@ OBJS+= fw_cfg.o
> OBJS+= watchdog.o
> OBJS+= nand.o ecc.o
>
> -OBJS+= m48t59.o
> +OBJS+= m48t59.o escc.o
> +
> +# PC style devices
> +OBJS+= fdc.o
This breaks archs that do not come with DMA_* implementations. At least
ARM no longer links.
LINK arm-softmmu/qemu-system-arm
../libhw64/libqemuhw64.a(fdc.o): In function `fdctrl_stop_transfer':
/data/qemu/hw/fdc.c:1086: undefined reference to `DMA_release_DREQ'
[...]
Jan
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 257 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Qemu-devel] Re: [COMMIT e20a8df] Compile fdc, escc and SCSI controllers only once
2009-05-21 16:45 ` [Qemu-devel] Re: [COMMIT e20a8df] Compile fdc, escc and SCSI controllers only once Jan Kiszka
@ 2009-05-21 18:35 ` Blue Swirl
2009-05-21 22:32 ` Paul Brook
0 siblings, 1 reply; 5+ messages in thread
From: Blue Swirl @ 2009-05-21 18:35 UTC (permalink / raw)
To: Jan Kiszka; +Cc: qemu-devel
On 5/21/09, Jan Kiszka <jan.kiszka@web.de> wrote:
> Anthony Liguori wrote:
> > From: Blue Swirl <blauwirbel-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> >
> > Signed-off-by: Blue Swirl <blauwirbel-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
> >
> > diff --git a/Makefile.hw b/Makefile.hw
> > index 87675fd..6da37a9 100644
> > --- a/Makefile.hw
> > +++ b/Makefile.hw
> > @@ -21,7 +21,13 @@ OBJS+= fw_cfg.o
> > OBJS+= watchdog.o
> > OBJS+= nand.o ecc.o
> >
> > -OBJS+= m48t59.o
> > +OBJS+= m48t59.o escc.o
> > +
> > +# PC style devices
> > +OBJS+= fdc.o
>
> This breaks archs that do not come with DMA_* implementations. At least
> ARM no longer links.
>
> LINK arm-softmmu/qemu-system-arm
> ../libhw64/libqemuhw64.a(fdc.o): In function `fdctrl_stop_transfer':
> /data/qemu/hw/fdc.c:1086: undefined reference to `DMA_release_DREQ'
> [...]
Yes, I forgot about the whole-archive hack. I've disabled it for
hwlib, so now arm-softmmu links.
The whole-archive flag should be used only when needed, otherwise it
will pull in a lot of unnecessary stuff like above.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] Re: [COMMIT e20a8df] Compile fdc, escc and SCSI controllers only once
2009-05-21 18:35 ` Blue Swirl
@ 2009-05-21 22:32 ` Paul Brook
2009-05-22 15:46 ` Blue Swirl
0 siblings, 1 reply; 5+ messages in thread
From: Paul Brook @ 2009-05-21 22:32 UTC (permalink / raw)
To: qemu-devel; +Cc: Blue Swirl, Jan Kiszka
> > This breaks archs that do not come with DMA_* implementations. At least
> > ARM no longer links.
> >
> > LINK arm-softmmu/qemu-system-arm
> > ../libhw64/libqemuhw64.a(fdc.o): In function `fdctrl_stop_transfer':
> > /data/qemu/hw/fdc.c:1086: undefined reference to `DMA_release_DREQ'
> > [...]
>
> Yes, I forgot about the whole-archive hack. I've disabled it for
> hwlib, so now arm-softmmu links.
This is completely wrong. The reason we use whole-archive is so that device
constructors are run. Most machines are broken after your change.
Paul
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] Re: [COMMIT e20a8df] Compile fdc, escc and SCSI controllers only once
2009-05-21 22:32 ` Paul Brook
@ 2009-05-22 15:46 ` Blue Swirl
2009-05-22 15:49 ` Paul Brook
0 siblings, 1 reply; 5+ messages in thread
From: Blue Swirl @ 2009-05-22 15:46 UTC (permalink / raw)
To: Paul Brook; +Cc: Jan Kiszka, qemu-devel
On 5/22/09, Paul Brook <paul@codesourcery.com> wrote:
>
> > > This breaks archs that do not come with DMA_* implementations. At least
> > > ARM no longer links.
> > >
> > > LINK arm-softmmu/qemu-system-arm
> > > ../libhw64/libqemuhw64.a(fdc.o): In function `fdctrl_stop_transfer':
> > > /data/qemu/hw/fdc.c:1086: undefined reference to `DMA_release_DREQ'
> > > [...]
> >
> > Yes, I forgot about the whole-archive hack. I've disabled it for
> > hwlib, so now arm-softmmu links.
>
>
> This is completely wrong. The reason we use whole-archive is so that device
> constructors are run. Most machines are broken after your change.
Did you test? I don't see any breakage, qemu-img --help shows all
block formats and qemu-system-arm -M '?' lists all machines.
Because whole-archive is still used for libqemu_common.a, all devices
in that archive are linked in (whether they are used or not!), so the
constructors work.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] Re: [COMMIT e20a8df] Compile fdc, escc and SCSI controllers only once
2009-05-22 15:46 ` Blue Swirl
@ 2009-05-22 15:49 ` Paul Brook
0 siblings, 0 replies; 5+ messages in thread
From: Paul Brook @ 2009-05-22 15:49 UTC (permalink / raw)
To: qemu-devel; +Cc: Blue Swirl, Jan Kiszka
> > > Yes, I forgot about the whole-archive hack. I've disabled it for
> > > hwlib, so now arm-softmmu links.
> >
> > This is completely wrong. The reason we use whole-archive is so that
> > device constructors are run. Most machines are broken after your change.
>
> Did you test? I don't see any breakage, qemu-img --help shows all
> block formats and qemu-system-arm -M '?' lists all machines.
>
> Because whole-archive is still used for libqemu_common.a, all devices
> in that archive are linked in (whether they are used or not!), so the
> constructors work.
The machines themselves are there, but many of the devices they use (e.g. the
pci scsi emulation) are not.
Paul
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2009-05-22 15:49 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <200905211555.n4LFtklw030900@d01av03.pok.ibm.com>
2009-05-21 16:45 ` [Qemu-devel] Re: [COMMIT e20a8df] Compile fdc, escc and SCSI controllers only once Jan Kiszka
2009-05-21 18:35 ` Blue Swirl
2009-05-21 22:32 ` Paul Brook
2009-05-22 15:46 ` Blue Swirl
2009-05-22 15:49 ` Paul Brook
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).