From: Eric Dumazet <dada1@cosmosbay.com>
To: Gianni Tedesco <gxt@cs.nott.ac.uk>
Cc: Andrew Morton <akpm@linux-foundation.org>,
arges@linux.vnet.ibm.com, Maynard Johnson <maynardj@us.ibm.com>,
Vegard Nossum <vegard.nossum@gmail.com>,
linux-kernel@vger.kernel.org,
oprofile-list@lists.sourceforge.net, Mike Travis <travis@sgi.com>
Subject: Re: oprofile BUG() in current kernel.
Date: Tue, 13 May 2008 12:25:26 +0200 [thread overview]
Message-ID: <48296C96.8060000@cosmosbay.com> (raw)
In-Reply-To: <1210671688.3472.10.camel@dao.KWGR614>
[-- Attachment #1: Type: text/plain, Size: 1048 bytes --]
Gianni Tedesco a écrit :
>
>
> Nope, exact same bad paging request in kernel mode... probably the bug
> is something deep in oprofile then?
>
Hum... Are you using oprofile as a module or statically included in kernel ?
Current module loader only allocates percpu room by examining
".data.percpu" section and should be augmented to also look at
".data.percpu.shared_aligned"
Or, change DEFINE_PER_CPU_SHARED_ALIGNED() for modules (to use
".data.percpu" only)
Anyway, with the per_cpu conversion of cpu_buffer, we dont need to
request cache_line alignment anymore
[PATCH] oprofile: Dont request cache line alignment for cpu_buffer
Alignment was previously requested because cpu_buffer was an [NR_CPUS]
array, to avoid cache line sharing between CPUS.
After commit 608dfddd845da5ab6accef70154c8910529699f7 (
oprofile: change cpu_buffer from array to per_cpu variable ),
we dont need to force an alignement anymore since cpu_buffer sits in
per_cpu zone.
Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
[-- Attachment #2: oprofile.patch --]
[-- Type: text/plain, Size: 822 bytes --]
diff --git a/drivers/oprofile/cpu_buffer.c b/drivers/oprofile/cpu_buffer.c
index efcbf4b..2450b3a 100644
--- a/drivers/oprofile/cpu_buffer.c
+++ b/drivers/oprofile/cpu_buffer.c
@@ -27,7 +27,7 @@
#include "buffer_sync.h"
#include "oprof.h"
-DEFINE_PER_CPU_SHARED_ALIGNED(struct oprofile_cpu_buffer, cpu_buffer);
+DEFINE_PER_CPU(struct oprofile_cpu_buffer, cpu_buffer);
static void wq_sync_buffer(struct work_struct *work);
diff --git a/drivers/oprofile/cpu_buffer.h b/drivers/oprofile/cpu_buffer.h
index 1358817..c3e366b 100644
--- a/drivers/oprofile/cpu_buffer.h
+++ b/drivers/oprofile/cpu_buffer.h
@@ -46,7 +46,7 @@ struct oprofile_cpu_buffer {
unsigned long sample_invalid_eip;
int cpu;
struct delayed_work work;
-} ____cacheline_aligned;
+};
DECLARE_PER_CPU(struct oprofile_cpu_buffer, cpu_buffer);
next prev parent reply other threads:[~2008-05-13 10:26 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-12 12:02 oprofile BUG() in current kernel Gianni Tedesco
2008-05-12 12:19 ` Vegard Nossum
2008-05-12 13:31 ` Gianni Tedesco
2008-05-12 14:11 ` Maynard Johnson
2008-05-12 16:38 ` Chris J Arges
2008-05-13 8:40 ` Andrew Morton
2008-05-13 9:01 ` Vegard Nossum
2008-05-13 9:41 ` Gianni Tedesco
2008-05-13 10:25 ` Eric Dumazet [this message]
2008-05-13 10:59 ` Gianni Tedesco
[not found] ` <482986B3.1090601@cosmosbay.com>
2008-05-13 14:38 ` Gianni Tedesco
2008-05-13 15:23 ` Andrew Morton
2008-05-13 15:12 ` [PATCH] per_cpu: fix DEFINE_PER_CPU_SHARED_ALIGNED for modules Eric Dumazet
2008-05-14 5:18 ` Eric Dumazet
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=48296C96.8060000@cosmosbay.com \
--to=dada1@cosmosbay.com \
--cc=akpm@linux-foundation.org \
--cc=arges@linux.vnet.ibm.com \
--cc=gxt@cs.nott.ac.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=maynardj@us.ibm.com \
--cc=oprofile-list@lists.sourceforge.net \
--cc=travis@sgi.com \
--cc=vegard.nossum@gmail.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.