* 2.6.23-rc3-mm1: cannot stat `vdso.so.dbg'
@ 2007-08-22 10:15 Alexey Dobriyan
2007-08-22 10:24 ` Roland McGrath
0 siblings, 1 reply; 8+ messages in thread
From: Alexey Dobriyan @ 2007-08-22 10:15 UTC (permalink / raw)
To: akpm; +Cc: roland, ak, linux-kernel
# make V=1 modules_install install
make -f scripts/Makefile.build obj=arch/x86_64/vdso install
cp vdso.so.dbg /lib/modules/2.6.23-rc3-mm1/vdso/vdso.so
cp: cannot stat `vdso.so.dbg': No such file or directory
make[1]: *** [vdso.so] Error 1
make: *** [install] Error 2
However, it's in place looks like:
# ls -l arch/x86_64/vdso/vdso*
-rw-r--r-- 1 ad ad 291 Aug 22 13:46 arch/x86_64/vdso/vdso-note.S
-rw-r--r-- 1 ad ad 830 Aug 22 13:53 arch/x86_64/vdso/vdso-note.o
-rw-r--r-- 1 ad ad 45 Aug 22 13:46 arch/x86_64/vdso/vdso-start.S
-rw-r--r-- 1 ad ad 753 Aug 22 13:53 arch/x86_64/vdso/vdso-start.o
-rw-r--r-- 1 ad ad 3257 Aug 22 13:53 arch/x86_64/vdso/vdso-syms.o
-rw-r--r-- 1 ad ad 58 Aug 22 13:46 arch/x86_64/vdso/vdso.S
-rw-r--r-- 1 ad ad 2150 Aug 22 13:53 arch/x86_64/vdso/vdso.lds
-rw-r--r-- 1 ad ad 2163 Aug 22 13:46 arch/x86_64/vdso/vdso.lds.S
-rw-r--r-- 1 ad ad 4905 Aug 22 13:53 arch/x86_64/vdso/vdso.o
-rw-r--r-- 1 ad ad 4104 Aug 22 13:53 arch/x86_64/vdso/vdso.so
===> -rwxr-xr-x 1 ad ad 5482 Aug 22 13:53 arch/x86_64/vdso/vdso.so.dbg
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: 2.6.23-rc3-mm1: cannot stat `vdso.so.dbg'
2007-08-22 10:15 2.6.23-rc3-mm1: cannot stat `vdso.so.dbg' Alexey Dobriyan
@ 2007-08-22 10:24 ` Roland McGrath
2007-08-22 15:36 ` Andrew Morton
0 siblings, 1 reply; 8+ messages in thread
From: Roland McGrath @ 2007-08-22 10:24 UTC (permalink / raw)
To: Alexey Dobriyan; +Cc: akpm, ak, linux-kernel
That is fixed by the later version of the vdso-install patches I sent later.
I thought Andrew had already incorporated the fixed versions.
Thanks,
Roland
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: 2.6.23-rc3-mm1: cannot stat `vdso.so.dbg'
2007-08-22 10:24 ` Roland McGrath
@ 2007-08-22 15:36 ` Andrew Morton
2007-08-22 21:56 ` Roland McGrath
0 siblings, 1 reply; 8+ messages in thread
From: Andrew Morton @ 2007-08-22 15:36 UTC (permalink / raw)
To: Roland McGrath; +Cc: Alexey Dobriyan, ak, linux-kernel
On Wed, 22 Aug 2007 03:24:34 -0700 (PDT) Roland McGrath <roland@redhat.com> wrote:
> That is fixed by the later version of the vdso-install patches I sent later.
> I thought Andrew had already incorporated the fixed versions.
>
Those patches are in Andi's tree. His tree has the old versions. The
patches are inter-tangled so it is non-trivial for me to generate
incremental patches on top of Andi's tree which bring his old patches up to
date with the new ones. I could of course do so, but it'd be better if
Andi's tree weren't carrying old versions of
x86_64-ia32-vdso-install-unstripped-copies-on-disk and
x86_64-vdso-install-unstripped-copies-on-disk
Please resend those patches to Andi.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: 2.6.23-rc3-mm1: cannot stat `vdso.so.dbg'
2007-08-22 15:36 ` Andrew Morton
@ 2007-08-22 21:56 ` Roland McGrath
2007-08-22 22:58 ` Andi Kleen
0 siblings, 1 reply; 8+ messages in thread
From: Roland McGrath @ 2007-08-22 21:56 UTC (permalink / raw)
To: Andrew Morton; +Cc: Alexey Dobriyan, ak, linux-kernel
[-- Attachment #1: message body text --]
[-- Type: text/plain, Size: 581 bytes --]
> Those patches are in Andi's tree. His tree has the old versions. The
> patches are inter-tangled so it is non-trivial for me to generate
> incremental patches on top of Andi's tree which bring his old patches up to
> date with the new ones. I could of course do so, but it'd be better if
> Andi's tree weren't carrying old versions of
> x86_64-ia32-vdso-install-unstripped-copies-on-disk and
> x86_64-vdso-install-unstripped-copies-on-disk
>
> Please resend those patches to Andi.
These haven't changed since I sent them (including to Andi) on August 12.
Thanks,
Roland
[-- Attachment #2.1: Type: text/plain, Size: 3378 bytes --]
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
From: Roland McGrath <roland@redhat.com>
To: akpm@linux-foundation.org
Cc: linux-kernel@vger.kernel.org
Cc: ak@suse.de, sam@ravnborg.org
Subject: [PATCH 1/2] x86_64 ia32 vDSO: install unstripped copies on disk
Date: Sun, 12 Aug 2007 19:17:00 -0700 (PDT)
Message-Id: <20070813021700.10E054D057D@magilla.localdomain>
While integrating these with the Fedora kernel build, I worked out a few kinks.
This patch replaces x86_64-ia32-vdso-install-unstripped-copies-on-disk.patch
Thanks,
Roland
---
This keeps an unstripped copy of the vDSO images built before they are
stripped and embedded in the kernel. The unstripped copies get installed
in $(MODLIB)/vdso/ by "make install" (or you can explicitly use the
subtarget "make vdso_install"). These files can be useful when they
contain source-level debugging information.
Signed-off-by: Roland McGrath <roland@redhat.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Andi Kleen <ak@suse.de>
---
arch/x86_64/Makefile | 3 +++
arch/x86_64/ia32/Makefile | 25 +++++++++++++++++++++----
2 files changed, 24 insertions(+), 4 deletions(-)
diff -puN arch/x86_64/Makefile~x86_64-ia32-vdso-install-unstripped-copies-on-disk arch/x86_64/Makefile
--- a/arch/x86_64/Makefile~x86_64-ia32-vdso-install-unstripped-copies-on-disk
+++ a/arch/x86_64/Makefile
@@ -105,9 +105,14 @@ bzdisk: vmlinux
fdimage fdimage144 fdimage288 isoimage: vmlinux
$(Q)$(MAKE) $(build)=$(boot) BOOTIMAGE=$(BOOTIMAGE) $@
-install:
+install: vdso_install
$(Q)$(MAKE) $(build)=$(boot) BOOTIMAGE=$(BOOTIMAGE) $@
+vdso_install:
+ifeq ($(CONFIG_IA32_EMULATION),y)
+ $(Q)$(MAKE) $(build)=arch/x86_64/ia32 $@
+endif
+
archclean:
$(Q)$(MAKE) $(clean)=$(boot)
diff -puN arch/x86_64/ia32/Makefile~x86_64-ia32-vdso-install-unstripped-copies-on-disk arch/x86_64/ia32/Makefile
--- a/arch/x86_64/ia32/Makefile~x86_64-ia32-vdso-install-unstripped-copies-on-disk
+++ a/arch/x86_64/ia32/Makefile
@@ -18,18 +18,35 @@ $(obj)/syscall32_syscall.o: \
$(foreach F,sysenter syscall,$(obj)/vsyscall-$F.so)
# Teach kbuild about targets
-targets := $(foreach F,sysenter syscall,vsyscall-$F.o vsyscall-$F.so)
+targets := $(foreach F,$(addprefix vsyscall-,sysenter syscall),\
+ $F.o $F.so $F.so.dbg)
# The DSO images are built using a special linker script
quiet_cmd_syscall = SYSCALL $@
- cmd_syscall = $(CC) -m32 -nostdlib -shared -s \
+ cmd_syscall = $(CC) -m32 -nostdlib -shared \
$(call ld-option, -Wl$(comma)--hash-style=sysv) \
-Wl,-soname=linux-gate.so.1 -o $@ \
-Wl,-T,$(filter-out FORCE,$^)
-$(obj)/vsyscall-sysenter.so $(obj)/vsyscall-syscall.so: \
-$(obj)/vsyscall-%.so: $(src)/vsyscall.lds $(obj)/vsyscall-%.o FORCE
+$(obj)/%.so: OBJCOPYFLAGS := -S
+$(obj)/%.so: $(obj)/%.so.dbg FORCE
+ $(call if_changed,objcopy)
+
+$(obj)/vsyscall-sysenter.so.dbg $(obj)/vsyscall-syscall.so.dbg: \
+$(obj)/vsyscall-%.so.dbg: $(src)/vsyscall.lds $(obj)/vsyscall-%.o FORCE
$(call if_changed,syscall)
AFLAGS_vsyscall-sysenter.o = -m32 -Wa,-32
AFLAGS_vsyscall-syscall.o = -m32 -Wa,-32
+
+vdsos := vdso32-sysenter.so vdso32-syscall.so
+
+quiet_cmd_vdso_install = INSTALL $@
+ cmd_vdso_install = cp $(@:vdso32-%.so=$(obj)/vsyscall-%.so.dbg) \
+ $(MODLIB)/vdso/$@
+
+$(vdsos):
+ @mkdir -p $(MODLIB)/vdso
+ $(call cmd,vdso_install)
+
+vdso_install: $(vdsos)
[-- Attachment #2.2: Type: text/plain, Size: 3194 bytes --]
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
From: Roland McGrath <roland@redhat.com>
To: akpm@linux-foundation.org
Cc: linux-kernel@vger.kernel.org
Cc: ak@suse.de
Subject: [PATCH 2/2] x86_64 vDSO: install unstripped copies on disk
Date: Sun, 12 Aug 2007 19:19:31 -0700 (PDT)
Message-Id: <20070813021931.1406A4D057D@magilla.localdomain>
While integrating these with the Fedora kernel build, I worked out a few kinks.
This patch replaces x86_64-vdso-install-unstripped-copies-on-disk.patch
and expects x86_64-ia32-vdso-install-unstripped-copies-on-disk.patch
was applied first.
Thanks,
Roland
---
This keeps an unstripped copy of the vDSO images built before they are
stripped and embedded in the kernel. The unstripped copies get installed
in $(MODLIB)/vdso/ by "make install" (or you can explicitly use the
subtarget "make vdso_install"). These files can be useful when they
contain source-level debugging information.
Signed-off-by: Roland McGrath <roland@redhat.com>
---
arch/x86_64/Makefile | 1 +
arch/x86_64/vdso/Makefile | 20 ++++++++++++++++----
2 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/arch/x86_64/Makefile b/arch/x86_64/Makefile
index 93fc1f2..c0905ae 100644
--- a/arch/x86_64/Makefile
+++ b/arch/x86_64/Makefile
@@ -112,6 +112,7 @@ vdso_install:
ifeq ($(CONFIG_IA32_EMULATION),y)
$(Q)$(MAKE) $(build)=arch/x86_64/ia32 $@
endif
+ $(Q)$(MAKE) $(build)=arch/x86_64/vdso $@
archclean:
$(Q)$(MAKE) $(clean)=$(boot)
diff --git a/arch/x86_64/vdso/Makefile b/arch/x86_64/vdso/Makefile
index faaa72f..20ecf05 100644
--- a/arch/x86_64/vdso/Makefile
+++ b/arch/x86_64/vdso/Makefile
@@ -13,7 +13,7 @@ vobjs := $(foreach F,$(vobjs-y),$(obj)/$F)
$(obj)/vdso.o: $(obj)/vdso.so
-targets += vdso.so vdso.lds $(vobjs-y) vdso-syms.o
+targets += vdso.so vdso.so.dbg vdso.lds $(vobjs-y) vdso-syms.o
# The DSO images are built using a special linker script.
quiet_cmd_syscall = SYSCALL $@
@@ -25,14 +25,18 @@ export CPPFLAGS_vdso.lds += -P -C -U$(ARCH)
vdso-flags = -fPIC -shared -Wl,-soname=linux-vdso.so.1 \
$(call ld-option, -Wl$(comma)--hash-style=sysv) \
-Wl,-z,max-page-size=4096 -Wl,-z,common-page-size=4096
-SYSCFLAGS_vdso.so = $(vdso-flags)
+SYSCFLAGS_vdso.so.dbg = $(vdso-flags)
$(obj)/vdso.o: $(src)/vdso.S $(obj)/vdso.so
-$(obj)/vdso.so: $(src)/vdso.lds $(vobjs) FORCE
+$(obj)/vdso.so.dbg: $(src)/vdso.lds $(vobjs) FORCE
$(call if_changed,syscall)
-CFL := $(PROFILING) -mcmodel=small -fPIC -g0 -O2 -fasynchronous-unwind-tables -m64
+$(obj)/%.so: OBJCOPYFLAGS := -S
+$(obj)/%.so: $(obj)/%.so.dbg FORCE
+ $(call if_changed,objcopy)
+
+CFL := $(PROFILING) -mcmodel=small -fPIC $(if $(CONFIG_DEBUG_INFO),-g,-g0) -O2 -fasynchronous-unwind-tables -m64
$(obj)/vclock_gettime.o: CFLAGS = $(CFL)
$(obj)/vgetcpu.o: CFLAGS = $(CFL)
@@ -47,3 +51,11 @@ $(obj)/built-in.o: ld_flags += -R $(obj)/vdso-syms.o
SYSCFLAGS_vdso-syms.o = -r -d
$(obj)/vdso-syms.o: $(src)/vdso.lds $(vobjs) FORCE
$(call if_changed,syscall)
+
+quiet_cmd_vdso_install = INSTALL $@
+ cmd_vdso_install = cp $(obj)/$@.dbg $(MODLIB)/vdso/$@
+vdso.so:
+ @mkdir -p $(MODLIB)/vdso
+ $(call cmd,vdso_install)
+
+vdso_install: vdso.so
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: 2.6.23-rc3-mm1: cannot stat `vdso.so.dbg'
2007-08-22 21:56 ` Roland McGrath
@ 2007-08-22 22:58 ` Andi Kleen
2007-08-22 23:16 ` Roland McGrath
0 siblings, 1 reply; 8+ messages in thread
From: Andi Kleen @ 2007-08-22 22:58 UTC (permalink / raw)
To: Roland McGrath; +Cc: Andrew Morton, Alexey Dobriyan, linux-kernel
On Wednesday 22 August 2007 23:56:38 Roland McGrath wrote:
> > Those patches are in Andi's tree. His tree has the old versions. The
> > patches are inter-tangled so it is non-trivial for me to generate
> > incremental patches on top of Andi's tree which bring his old patches up to
> > date with the new ones. I could of course do so, but it'd be better if
> > Andi's tree weren't carrying old versions of
> > x86_64-ia32-vdso-install-unstripped-copies-on-disk and
> > x86_64-vdso-install-unstripped-copies-on-disk
> >
> > Please resend those patches to Andi.
>
> These haven't changed since I sent them (including to Andi) on August 12.
How come they have identical subjects and identical description? How is
anybody supposed to make sense of this?
-Andi
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: 2.6.23-rc3-mm1: cannot stat `vdso.so.dbg'
2007-08-22 22:58 ` Andi Kleen
@ 2007-08-22 23:16 ` Roland McGrath
2007-08-22 23:57 ` Andi Kleen
0 siblings, 1 reply; 8+ messages in thread
From: Roland McGrath @ 2007-08-22 23:16 UTC (permalink / raw)
To: Andi Kleen; +Cc: Andrew Morton, Alexey Dobriyan, linux-kernel
> How come they have identical subjects and identical description? How is
> anybody supposed to make sense of this?
Sorry, I asked Andrew and he said to send replacement patches.
I thought I was following instructions.
Thanks,
Roland
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: 2.6.23-rc3-mm1: cannot stat `vdso.so.dbg'
2007-08-22 23:16 ` Roland McGrath
@ 2007-08-22 23:57 ` Andi Kleen
2007-08-23 0:32 ` Roland McGrath
0 siblings, 1 reply; 8+ messages in thread
From: Andi Kleen @ 2007-08-22 23:57 UTC (permalink / raw)
To: Roland McGrath; +Cc: Andrew Morton, Alexey Dobriyan, linux-kernel
On Thursday 23 August 2007 01:16:32 Roland McGrath wrote:
> > How come they have identical subjects and identical description? How is
> > anybody supposed to make sense of this?
>
> Sorry, I asked Andrew and he said to send replacement patches.
> I thought I was following instructions.
The problem is they're two patching consecutively patching the same
file with 100% identical subject/description.
So either: they should be merged together into one patch
or the second (or first) needs a new description/subject
I right now got the second as
vdso-do-something-more-with-unstripped-copies-on-disk:
Do something with vdsos and debug information
From: Roland McGrath <roland@redhat.com>
TBD this needs a proper changelog/subject from Roland. I have no idea what
it does
But clearly that's not an satisfactionary state. Which of the
options do you prefer?
-Andi
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: 2.6.23-rc3-mm1: cannot stat `vdso.so.dbg'
2007-08-22 23:57 ` Andi Kleen
@ 2007-08-23 0:32 ` Roland McGrath
0 siblings, 0 replies; 8+ messages in thread
From: Roland McGrath @ 2007-08-23 0:32 UTC (permalink / raw)
To: Andi Kleen; +Cc: Andrew Morton, Alexey Dobriyan, linux-kernel
> The problem is they're two patching consecutively patching the same
> file with 100% identical subject/description.
>
> So either: they should be merged together into one patch
> or the second (or first) needs a new description/subject
They do the same thing for the x86_64 ia32-compat and x86_64 native vDSOs,
respectively.
Subject: [PATCH 1/2] x86_64 ia32 vDSO: install unstripped copies on disk
Subject: [PATCH 2/2] x86_64 vDSO: install unstripped copies on disk
Andrew called them
x86_64-ia32-vdso-install-unstripped-copies-on-disk
x86_64-vdso-install-unstripped-copies-on-disk
The names/subjects are not identical, but differ in having "ia32" or not.
That is really the only difference between the two patches, too.
> TBD this needs a proper changelog/subject from Roland. I have no idea what
> it does
I don't now what is unclear about the log entry. Yes, each log entry says
the same thing after the first (Subject) line. Each one relates to a
different arch/x86_64/subdirectory/Makefile that creates vDSO images.
Prepend "This applies to the x86_64/vdso native vDSO building." or
"This applies to the x86_64/ia32 vDSO building." to the log if you prefer.
Thanks,
Roland
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2007-08-23 0:33 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-08-22 10:15 2.6.23-rc3-mm1: cannot stat `vdso.so.dbg' Alexey Dobriyan
2007-08-22 10:24 ` Roland McGrath
2007-08-22 15:36 ` Andrew Morton
2007-08-22 21:56 ` Roland McGrath
2007-08-22 22:58 ` Andi Kleen
2007-08-22 23:16 ` Roland McGrath
2007-08-22 23:57 ` Andi Kleen
2007-08-23 0:32 ` Roland McGrath
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox