From: Jesper Nilsson <Jesper.Nilsson@axis.com>
To: Tejun Heo <tj@kernel.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>,
David Miller <davem@davemloft.net>,
"JBeulich@novell.com" <JBeulich@novell.com>,
"andi@firstfloor.org" <andi@firstfloor.org>,
"mingo@elte.hu" <mingo@elte.hu>, "hpa@zytor.com" <hpa@zytor.com>,
"tglx@linutronix.de" <tglx@linutronix.de>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"x86@kernel.org" <x86@kernel.org>,
"ink@jurassic.park.msu.ru" <ink@jurassic.park.msu.ru>,
"rth@twiddle.net" <rth@twiddle.net>,
"linux@arm.linux.org.uk" <linux@arm.linux.org.uk>,
"hskinnemoen@atmel.com" <hskinnemoen@atmel.com>,
"cooloney@kernel.org" <cooloney@kernel.org>,
Mikael Starvik <mikael.starvik@axis.com>,
"dhowells@redhat.com" <dhowells@redhat.com>,
"ysato@users.sourceforge.jp" <ysato@users.sourceforge.jp>,
"tony.luck@intel.com" <tony.luck@intel.com>,
"takata@linux-m32r.org" <takata@linux-m32r.org>,
"geert@linux-m68k.org" <geert@linux-m68k.org>,
"monstr@monstr.eu" <monstr@monstr.eu>,
"ralf@linux-mips.org" <ralf@linux-mips.org>,
"kyle@mcmartin.ca" <kyle@mcmartin.ca>,
"paulus@samba.org" <paulus@samba.org>,
"schwidefsky@de.ibm.com" <schwidefsky@de.ibm.com>,
"heiko.carstens@de.ibm.com" <heiko.carstens@de.ibm.com>,
"lethal@linux-sh.org" <lethal@linux-sh.org>,
"jdike@addtoit.com" <jdike@addtoit.com>,
"chris@zankel.net" <chris@zankel.net>,
"rusty@rustcorp.com.au" <rusty@rustcorp.com.au>,
"jens.axboe@oracle.com" <jens.axboe@oracle.com>,
"davej@redhat.com" <davej@redhat.com>,
"jeremy@xensource.com" <jeremy@xensource.com>,
"linux-mm@kvack.org" <linux-mm@kvack.org>
Subject: Re: [PATCH 3/7] percpu: clean up percpu variable definitions
Date: Thu, 11 Jun 2009 12:45:51 +0200 [thread overview]
Message-ID: <20090611104550.GQ20504@axis.com> (raw)
In-Reply-To: <4A289E3A.30000@kernel.org>
On Fri, Jun 05, 2009 at 06:25:30AM +0200, Tejun Heo wrote:
> Benjamin Herrenschmidt wrote:
> > On Mon, 2009-06-01 at 20:36 +0900, Tejun Heo wrote:
> >>> Whether the volatile is actually needed or not, it's bad to have this
> >>> kind of potential behavior changing nugget hidden in this seemingly
> >>> inocuous change. Especially if you're the poor soul who ends up
> >>> having to debug it :-/
> >> You're right. Aieee... how do I feed volatile to the DEFINE macro.
> >> I'll think of something.
> >
> > Or better, work with the cris maintainer to figure out whether it's
> > needed (it probably isn't) and have a pre-requisite patch that removes
> > it before your series :-)
>
> Yeap, that's worth giving a shot.
>
> Mikael Starvik, can you please enlighten us why volatile is necessary
> there?
I've talked with Mikael, and we both agreed that this was probably
a legacy from earlier versions, and the volatile is no longer needed.
Confirmed by booting and running some video-streaming on an ARTPEC-3
(CRISv32) board.
You can take the following patch as a pre-requisite, or go the way of
the original patch.
From: Jesper Nilsson <jesper.nilsson@axis.com>
Subject: [PATCH] CRIS: Change DEFINE_PER_CPU of current_pgd to be non volatile.
The DEFINE_PER_CPU of current_pgd was on CRIS defined using volatile,
which is not needed. Remove volatile.
Signed-off-by: Jesper Nilsson <jesper.nilsson@axis.com>
---
arch/cris/include/asm/mmu_context.h | 3 ++-
arch/cris/mm/fault.c | 2 +-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/arch/cris/include/asm/mmu_context.h b/arch/cris/include/asm/mmu_context.h
index 72ba08d..476cd9e 100644
--- a/arch/cris/include/asm/mmu_context.h
+++ b/arch/cris/include/asm/mmu_context.h
@@ -17,7 +17,8 @@ extern void switch_mm(struct mm_struct *prev, struct mm_struct *next,
* registers like cr3 on the i386
*/
-extern volatile DEFINE_PER_CPU(pgd_t *,current_pgd); /* defined in arch/cris/mm/fault.c */
+/* defined in arch/cris/mm/fault.c */
+extern DEFINE_PER_CPU(pgd_t *, current_pgd);
static inline void enter_lazy_tlb(struct mm_struct *mm, struct task_struct *tsk)
{
diff --git a/arch/cris/mm/fault.c b/arch/cris/mm/fault.c
index c4c76db..84d22ae 100644
--- a/arch/cris/mm/fault.c
+++ b/arch/cris/mm/fault.c
@@ -29,7 +29,7 @@ extern void die_if_kernel(const char *, struct pt_regs *, long);
/* current active page directory */
-volatile DEFINE_PER_CPU(pgd_t *,current_pgd);
+DEFINE_PER_CPU(pgd_t *, current_pgd);
unsigned long cris_signal_return_page;
/*
--
1.6.1
> Thanks.
>
> --
> tejun
/^JN - Jesper Nilsson
--
Jesper Nilsson -- jesper.nilsson@axis.com
--
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>
next prev parent reply other threads:[~2009-06-11 10:47 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-01 8:58 [GIT PATCH core/percpu] percpu: convert most archs to dynamic percpu, take#2 Tejun Heo
2009-06-01 8:58 ` [PATCH 1/7] percpu: use dynamic percpu allocator as the default percpu allocator Tejun Heo
2009-06-01 8:58 ` [PATCH 2/7] percpu: cleanup percpu array definitions Tejun Heo
2009-06-01 8:58 ` Tejun Heo
2009-06-01 8:58 ` [PATCH 3/7] percpu: clean up percpu variable definitions Tejun Heo
2009-06-01 8:58 ` Tejun Heo
2009-06-01 9:40 ` David Miller
2009-06-01 9:40 ` David Miller
2009-06-01 11:36 ` Tejun Heo
2009-06-01 11:36 ` Tejun Heo
2009-06-02 5:08 ` Benjamin Herrenschmidt
2009-06-02 5:08 ` Benjamin Herrenschmidt
2009-06-05 4:25 ` Tejun Heo
2009-06-05 4:25 ` Tejun Heo
2009-06-11 10:45 ` Jesper Nilsson [this message]
2009-06-17 2:28 ` Tejun Heo
2009-06-10 18:30 ` H. Peter Anvin
2009-06-10 18:30 ` H. Peter Anvin
2009-06-01 8:58 ` [PATCH 4/7] percpu: enforce global definition Tejun Heo
2009-06-01 8:58 ` [PATCH 5/7] alpha: kill unnecessary __used attribute in PER_CPU_ATTRIBUTES Tejun Heo
2009-06-01 8:58 ` [PATCH 6/7] alpha: switch to dynamic percpu allocator Tejun Heo
2009-06-01 8:58 ` [PATCH 7/7] s390: " Tejun Heo
2009-06-01 16:10 ` [GIT PATCH core/percpu] percpu: convert most archs to dynamic percpu, take#2 Kyle McMartin
2009-06-01 19:51 ` Kyle McMartin
2009-06-05 4:24 ` Tejun Heo
2009-06-02 6:35 ` Benjamin Herrenschmidt
-- strict thread matches above, loose matches on Subject: below --
2009-05-20 7:37 [PATCHSET core/percpu] percpu: convert most archs to dynamic percpu Tejun Heo
2009-05-20 7:37 ` [PATCH 3/7] percpu: clean up percpu variable definitions Tejun Heo
2009-05-20 7:37 ` Tejun Heo
2009-05-20 9:17 ` Jens Axboe
2009-05-20 9:17 ` Jens Axboe
2009-05-25 6:07 ` Rusty Russell
2009-05-25 6:07 ` Rusty Russell
2009-05-25 16:07 ` Tejun Heo
2009-05-25 16:07 ` Tejun Heo
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=20090611104550.GQ20504@axis.com \
--to=jesper.nilsson@axis.com \
--cc=JBeulich@novell.com \
--cc=andi@firstfloor.org \
--cc=benh@kernel.crashing.org \
--cc=chris@zankel.net \
--cc=cooloney@kernel.org \
--cc=davej@redhat.com \
--cc=davem@davemloft.net \
--cc=dhowells@redhat.com \
--cc=geert@linux-m68k.org \
--cc=heiko.carstens@de.ibm.com \
--cc=hpa@zytor.com \
--cc=hskinnemoen@atmel.com \
--cc=ink@jurassic.park.msu.ru \
--cc=jdike@addtoit.com \
--cc=jens.axboe@oracle.com \
--cc=jeremy@xensource.com \
--cc=kyle@mcmartin.ca \
--cc=lethal@linux-sh.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux@arm.linux.org.uk \
--cc=mikael.starvik@axis.com \
--cc=mingo@elte.hu \
--cc=monstr@monstr.eu \
--cc=paulus@samba.org \
--cc=ralf@linux-mips.org \
--cc=rth@twiddle.net \
--cc=rusty@rustcorp.com.au \
--cc=schwidefsky@de.ibm.com \
--cc=takata@linux-m32r.org \
--cc=tglx@linutronix.de \
--cc=tj@kernel.org \
--cc=tony.luck@intel.com \
--cc=x86@kernel.org \
--cc=ysato@users.sourceforge.jp \
/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.