All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
To: Mariusz Kozlowski <m.kozlowski@tuxland.pl>,
	Andrew Morton <akpm@linux-foundation.org>
Cc: linux-mm@kvack.org, balbir@linux.vnet.ibm.com,
	linux-kernel@vger.kernel.org,
	Peter Oberparleiter <oberparleiter@googlemail.com>
Subject: Re: 2.6.26-rc5-mm1
Date: Wed, 18 Jun 2008 10:35:24 +0200	[thread overview]
Message-ID: <4858C8CC.4040407@de.ibm.com> (raw)
In-Reply-To: <200806180026.27247.m.kozlowski@tuxland.pl>

Mariusz Kozlowski wrote:
> After a few hours and tons of reboots I narrowed it down to
> arch/x86/kernel/Makefile:
> 
> a) works
> 	obj-y                   += tsc_$(BITS).o io_delay.o rtc.o
> 	GCOV_tsc_$(BITS).o      := n
> 	#GCOV_io_delay.o        := n
> 	#GCOV_rtc.o     := n
> 
> b) doesn't work
> 	obj-y                   += tsc_$(BITS).o io_delay.o rtc.o
> 	#GCOV_tsc_$(BITS).o     := n
> 	#GCOV_io_delay.o        := n
> 	#GCOV_rtc.o     := n
> 
> and that points to arch/x86/kernel/tsc_64.c

Excellent work! 

I had a quick look at that file and couldn't identify any obvious reason
(for a non-x84 developer) why it shouldn't work with -fprofile-arcs.
There are some comments in the corresponding Makefile though that
indicate that tsc_64.o is a bit picky with regards to CFLAGS (no -pg,
-fno-stack-protector) so I think it's safe to simply exclude those
files from profiling.

Based on your findings, the following patch should be applied to -mm.
Thanks again for your effort.

--
[PATCH] gcov: fix run-time error on x86_64

From: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>

Disable profiling of tsc_$(BITS).o to fix a run-time error when using
CONFIG_GCOV_PROFILE_ALL on x86_64:

bash[498] segfault at ffffffff80868b58 ip ffffffffff600412
          sp 7fffa3d010f0 error 7
init[1] segfault at ffffffff80868b58 ip ffffffffff600412
        sp 7fff9e97f640 error 7
init[1] segfault at ffffffff80868b58 ip ffffffffff600412
        sp 7fff9e97eed0 error 7
Kernel panic - not syncing: Attemted to kill init!
Pid 1, comm: init Not tainted 2.6.26-rc5-mm1 #1

m.kozlowski@tuxland.pl wrote:
> After a few hours and tons of reboots I narrowed it down to
> arch/x86/kernel/Makefile:
>
> a) works
>	obj-y                   += tsc_$(BITS).o io_delay.o rtc.o
> 	GCOV_tsc_$(BITS).o      := n
> 	#GCOV_io_delay.o        := n
> 	#GCOV_rtc.o     := n
>
> b) doesn't work
> 	obj-y                   += tsc_$(BITS).o io_delay.o rtc.o
> 	#GCOV_tsc_$(BITS).o     := n
> 	#GCOV_io_delay.o        := n
>	#GCOV_rtc.o     := n
>
> and that points to arch/x86/kernel/tsc_64.c

Reported-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Reported-by: Balbir Singh <balbir@linux.vnet.ibm.com>
Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>

---
 arch/x86/kernel/Makefile |    3 +++
 1 file changed, 3 insertions(+)

Index: linux-2.6.26-rc5-mm3/arch/x86/kernel/Makefile
===================================================================
--- linux-2.6.26-rc5-mm3.orig/arch/x86/kernel/Makefile
+++ linux-2.6.26-rc5-mm3/arch/x86/kernel/Makefile
@@ -13,6 +13,9 @@ CFLAGS_REMOVE_tsc_32.o = -pg
 CFLAGS_REMOVE_rtc.o = -pg
 endif
 
+GCOV_tsc_32.o := n
+GCOV_tsc_64.o := n
+
 #
 # vsyscalls (which work on the user stack) should have
 # no stack-protector checks:

WARNING: multiple messages have this Message-ID (diff)
From: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
To: Mariusz Kozlowski <m.kozlowski@tuxland.pl>,
	Andrew Morton <akpm@linux-foundation.org>
Cc: linux-mm@kvack.org, balbir@linux.vnet.ibm.com,
	linux-kernel@vger.kernel.org,
	Peter Oberparleiter <oberparleiter@googlemail.com>
Subject: Re: 2.6.26-rc5-mm1
Date: Wed, 18 Jun 2008 10:35:24 +0200	[thread overview]
Message-ID: <4858C8CC.4040407@de.ibm.com> (raw)
In-Reply-To: <200806180026.27247.m.kozlowski@tuxland.pl>

Mariusz Kozlowski wrote:
> After a few hours and tons of reboots I narrowed it down to
> arch/x86/kernel/Makefile:
> 
> a) works
> 	obj-y                   += tsc_$(BITS).o io_delay.o rtc.o
> 	GCOV_tsc_$(BITS).o      := n
> 	#GCOV_io_delay.o        := n
> 	#GCOV_rtc.o     := n
> 
> b) doesn't work
> 	obj-y                   += tsc_$(BITS).o io_delay.o rtc.o
> 	#GCOV_tsc_$(BITS).o     := n
> 	#GCOV_io_delay.o        := n
> 	#GCOV_rtc.o     := n
> 
> and that points to arch/x86/kernel/tsc_64.c

Excellent work! 

I had a quick look at that file and couldn't identify any obvious reason
(for a non-x84 developer) why it shouldn't work with -fprofile-arcs.
There are some comments in the corresponding Makefile though that
indicate that tsc_64.o is a bit picky with regards to CFLAGS (no -pg,
-fno-stack-protector) so I think it's safe to simply exclude those
files from profiling.

Based on your findings, the following patch should be applied to -mm.
Thanks again for your effort.

--
[PATCH] gcov: fix run-time error on x86_64

From: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>

Disable profiling of tsc_$(BITS).o to fix a run-time error when using
CONFIG_GCOV_PROFILE_ALL on x86_64:

bash[498] segfault at ffffffff80868b58 ip ffffffffff600412
          sp 7fffa3d010f0 error 7
init[1] segfault at ffffffff80868b58 ip ffffffffff600412
        sp 7fff9e97f640 error 7
init[1] segfault at ffffffff80868b58 ip ffffffffff600412
        sp 7fff9e97eed0 error 7
Kernel panic - not syncing: Attemted to kill init!
Pid 1, comm: init Not tainted 2.6.26-rc5-mm1 #1

m.kozlowski@tuxland.pl wrote:
> After a few hours and tons of reboots I narrowed it down to
> arch/x86/kernel/Makefile:
>
> a) works
>	obj-y                   += tsc_$(BITS).o io_delay.o rtc.o
> 	GCOV_tsc_$(BITS).o      := n
> 	#GCOV_io_delay.o        := n
> 	#GCOV_rtc.o     := n
>
> b) doesn't work
> 	obj-y                   += tsc_$(BITS).o io_delay.o rtc.o
> 	#GCOV_tsc_$(BITS).o     := n
> 	#GCOV_io_delay.o        := n
>	#GCOV_rtc.o     := n
>
> and that points to arch/x86/kernel/tsc_64.c

Reported-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Reported-by: Balbir Singh <balbir@linux.vnet.ibm.com>
Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>

---
 arch/x86/kernel/Makefile |    3 +++
 1 file changed, 3 insertions(+)

Index: linux-2.6.26-rc5-mm3/arch/x86/kernel/Makefile
===================================================================
--- linux-2.6.26-rc5-mm3.orig/arch/x86/kernel/Makefile
+++ linux-2.6.26-rc5-mm3/arch/x86/kernel/Makefile
@@ -13,6 +13,9 @@ CFLAGS_REMOVE_tsc_32.o = -pg
 CFLAGS_REMOVE_rtc.o = -pg
 endif
 
+GCOV_tsc_32.o := n
+GCOV_tsc_64.o := n
+
 #
 # vsyscalls (which work on the user stack) should have
 # no stack-protector checks:

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2008-06-18  8:35 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-09 12:39 2.6.26-rc5-mm1 Andrew Morton
2008-06-09 12:39 ` 2.6.26-rc5-mm1 Andrew Morton
     [not found] ` <484D6671.302@linux.vnet.ibm.com>
2008-06-09 17:22   ` 2.6.26-rc5-mm1 Balbir Singh
2008-06-09 17:22     ` 2.6.26-rc5-mm1 Balbir Singh
2008-06-09 17:27 ` 2.6.26-rc5-mm1 Balbir Singh
2008-06-09 17:27   ` 2.6.26-rc5-mm1 Balbir Singh
2008-06-09 19:14   ` 2.6.26-rc5-mm1 Mariusz Kozlowski
2008-06-09 19:14     ` 2.6.26-rc5-mm1 Mariusz Kozlowski
2008-06-09 21:48     ` 2.6.26-rc5-mm1 Andrew Morton
2008-06-09 21:48       ` 2.6.26-rc5-mm1 Andrew Morton
2008-06-10  4:57       ` 2.6.26-rc5-mm1 Mariusz Kozlowski
2008-06-10  5:01         ` 2.6.26-rc5-mm1 Andrew Morton
2008-06-10  5:01           ` 2.6.26-rc5-mm1 Andrew Morton
2008-06-10  8:39           ` 2.6.26-rc5-mm1 Peter 1 Oberparleiter
2008-06-10  8:39             ` 2.6.26-rc5-mm1 Peter 1 Oberparleiter
2008-06-17 22:26             ` 2.6.26-rc5-mm1 Mariusz Kozlowski
2008-06-17 22:26               ` 2.6.26-rc5-mm1 Mariusz Kozlowski
2008-06-18  8:35               ` Peter Oberparleiter [this message]
2008-06-18  8:35                 ` 2.6.26-rc5-mm1 Peter Oberparleiter
2008-06-09 17:31 ` [BUG] 2.6.26-rc5-mm1- kernel BUG at arch/x86/kernel/io_apic_64.c:355! Kamalesh Babulal
2008-06-09 21:55   ` Andrew Morton
2008-06-10 12:23     ` Kamalesh Babulal
2008-06-15 17:16       ` Kamalesh Babulal
2008-06-09 19:20 ` [PATCH] Re: 2.6.26-rc5-mm1 - fix parenthesis in drivers/net/smc911x.h Mariusz Kozlowski
2008-06-09 19:20   ` Mariusz Kozlowski
2008-06-09 20:45 ` 2.6.26-rc5-mm1: kernel BUG at mm/filemap.c:575! Alexey Dobriyan
2008-06-09 20:45   ` Alexey Dobriyan
2008-06-09 21:40   ` Alexey Dobriyan
2008-06-09 21:40     ` Alexey Dobriyan
2008-06-09 22:37   ` Andrew Morton
2008-06-09 22:37     ` Andrew Morton
2008-06-10  2:21     ` Nick Piggin
2008-06-09 22:11 ` 2.6.26-rc5-mm1 Byron Bradley
2008-06-11 11:04   ` [patch] UWB: make UWB selectable on all archs with USB support David Vrabel
2008-06-11 22:26     ` Byron Bradley
2008-06-11 22:26       ` Byron Bradley
2008-06-09 22:33 ` sock lockup -> process in D state [Was: 2.6.26-rc5-mm1] Jiri Slaby
2008-06-09 22:33   ` Jiri Slaby
2008-06-09 23:01   ` Andrew Morton
2008-06-09 23:01     ` Andrew Morton
2008-06-10  6:19     ` Jiri Slaby
2008-06-10  6:19       ` Jiri Slaby

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=4858C8CC.4040407@de.ibm.com \
    --to=peter.oberparleiter@de.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=balbir@linux.vnet.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=m.kozlowski@tuxland.pl \
    --cc=oberparleiter@googlemail.com \
    /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.