lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110818193132.GA28546@n2100.arm.linux.org.uk>
Date:	Thu, 18 Aug 2011 20:31:32 +0100
From:	Russell King - ARM Linux <linux@....linux.org.uk>
To:	Arnaud Lacombe <lacombar@...il.com>
Cc:	Nicolas Pitre <nico@...xnic.net>, Sam Ravnborg <sam@...nborg.org>,
	Stephen Boyd <sboyd@...eaurora.org>,
	lkml <linux-kernel@...r.kernel.org>,
	linux-arm-kernel@...ts.infradead.org, linux-kbuild@...r.kernel.org
Subject: Re: [PATCH] ARM: zImage: Skip relinking if nothing changes

On Thu, Aug 18, 2011 at 02:03:43PM -0400, Arnaud Lacombe wrote:
> Hi,
> 
> On Wed, Aug 17, 2011 at 11:44 PM, Nicolas Pitre <nico@...xnic.net> wrote:
> > On Fri, 12 Aug 2011, Arnaud Lacombe wrote:
> >> On Fri, Aug 12, 2011 at 4:48 PM, Arnaud Lacombe <lacombar@...il.com> wrote:
> >> > On Fri, Aug 12, 2011 at 3:00 PM, Stephen Boyd <sboyd@...eaurora.org> wrote:
> >> >> diff --git a/arch/arm/boot/compressed/Makefile b/arch/arm/boot/compressed/Makefile
> >> >> index 0c74a6f..937fd26 100644
> >> >> --- a/arch/arm/boot/compressed/Makefile
> >> >> +++ b/arch/arm/boot/compressed/Makefile
> >> >> @@ -91,7 +91,7 @@ suffix_$(CONFIG_KERNEL_LZMA) = lzma
> >> >>
> >> >>  targets       := vmlinux vmlinux.lds \
> >> >>                 piggy.$(suffix_y) piggy.$(suffix_y).o \
> >> >> -                font.o font.c head.o misc.o $(OBJS)
> >> >> +                font.o font.c head.o misc.o lib1funcs.o lib1funcs.S $(OBJS)
> >> >>
> >> >>  # Make sure files are removed during clean
> >> >>  extra-y       += piggy.gzip piggy.lzo piggy.lzma lib1funcs.S
> >> >> @@ -121,9 +121,7 @@ LDFLAGS_vmlinux += -X
> >> >>  LDFLAGS_vmlinux += -T
> >> >>
> >> >>  # For __aeabi_uidivmod
> >> >> -lib1funcs = $(obj)/lib1funcs.o
> >> >> -
> >> >> -$(obj)/lib1funcs.S: $(srctree)/arch/$(SRCARCH)/lib/lib1funcs.S FORCE
> >> >> +$(obj)/lib1funcs.S: $(srctree)/arch/$(SRCARCH)/lib/lib1funcs.S
> >> >>        $(call cmd,shipped)
> >> >>
> >> > You should be able to avoid the extra copy altogether by doing something ala:
> >> >
> >> > $(obj)/lib1funcs.o: $(srctree)/arch/arm/lib/lib1funcs.S
> >> >        $(call cmd,as_o_S)
> >> >
> >> > note that I also remove the $(SRCARCH), as there is no other
> >> > `arch/*/lib/lib1funcs.S' than `arch/arm/lib/lib1funcs.S'
> >> >
> >> I withdraw this proposal and will hack around this to find a proper
> >> solution from within kbuild, and eventually come back on these uses
> >> :-)
> >
> > Any progress on this?
> >
> > I have a patch doing multiple similar $(call cmd,shipped) at the moment
> > and this is far from looking nice.
>
> What is your use-case ? Is it re-use of code in a different
> subdirectory (use-case presented in this thread), or aliasing of the
> same source under different object name in the same directory (as used
> in the alpha tree) ?

It is to be able to reuse the same file source file in both the main
kernel and the decompressor, sometimes rebuilding it with differing
options from the main kernel build.

As the two environments are entirely separate, it is not always
appropriate to clone the previously built object file.

Hence, we copy the source file and re-build it.

The alternative is that we could keep two copies of the same source
in two different locations, but that's just plain idiotic just to
satisfy some silly kbuild restriction.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ