From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: Lai Jiangshan <laijs@cn.fujitsu.com>
Cc: "H. Peter Anvin" <hpa@linux.intel.com>,
Peter Zijlstra <peterz@infradead.org>,
Michal Marek <mmarek@suse.cz>, Jan Beulich <JBeulich@novell.com>,
Ingo Molnar <mingo@elte.hu>,
Alexander van Heukelum <heukelum@fastmail.fm>,
Dipankar Sarma <dipankar@in.ibm.com>,
Andrew Morton <akpm@linux-foundation.org>,
Sam Ravnborg <sam@ravnborg.org>,
David Howells <dhowells@redhat.com>,
Oleg Nesterov <oleg@redhat.com>,
Roland McGrath <roland@redhat.com>,
linux-kernel@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>,
Steven Rostedt <rostedt@goodmis.org>
Subject: Re: [RFC PATCH 4/5] RCU: Add TASK_RCU_OFFSET
Date: Thu, 7 Apr 2011 08:47:37 -0700 [thread overview]
Message-ID: <20110407154737.GF2262@linux.vnet.ibm.com> (raw)
In-Reply-To: <4D9D507F.2040006@cn.fujitsu.com>
On Thu, Apr 07, 2011 at 01:49:51PM +0800, Lai Jiangshan wrote:
> On 04/07/2011 08:30 AM, Paul E. McKenney wrote:
> > On Wed, Apr 06, 2011 at 02:27:39PM -0700, H. Peter Anvin wrote:
> >> On 04/06/2011 02:06 PM, Peter Zijlstra wrote:
> >>> On Wed, 2011-04-06 at 13:13 -0700, Paul E. McKenney wrote:
> >>>> And the following patch builds correctly for defconfig x86 builds,
> >>>> while allowing rcupdate.h to see the sched.h definitions as needed
> >>>> to inline rcu_read_lock() and rcu_read_unlock().
> >>>>
> >>> Looks like an entirely reasonable patch to me ;-)
> >>>
> >>
> >> Quite... a lot better than the original proposal!
> >
> > Glad you both like it!
> >
> > When I do an allyesconfig build, I do get errors during the "CHECK"
> > phase, when it is putting things into the usr/include in the build tree.
> > I believe that this is because I am exposing different header files to
> > the library-export scripts. The following patch silences some of them,
> > but I am really out of my depth here.
> >
> > Sam, Jan, Michal, help?
> >
> > Thanx, Paul
> >
> > ------------------------------------------------------------------------
> >
>
> Easy to split rcupdate.h, hard to resolve the dependence problem.
>
> You can apply the next additional patch when you test:
I am sure that you are quite correct. ;-)
I am moving _rcu_read_lock() and _rcu_read_unlock() into
include/linux/rcutree.h and include/linux/rcutiny.h, and I am sure that
more pain will ensue.
One thing I don't understand... How does is it helping to group the
task_struct RCU-related fields into a structure? Is that generating
better code on your platform due to smaller offsets or something?
Also, does your patchset address the CHECK warnings?
Thanx, Paul
> diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h
> index 0b4496a..ccbebeb 100644
> --- a/include/linux/rcupdate.h
> +++ b/include/linux/rcupdate.h
> @@ -788,4 +788,10 @@ static inline void debug_rcu_head_unqueue(struct rcu_head *head)
> #error "Unknown RCU implementation specified to kernel configuration"
> #endif
>
> +#include <linux/sched.h>
> +static inline long test_use_task_struct(void)
> +{
> + return current->state;
> +}
> +
> #endif /* __LINUX_RCUPDATE_H */
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
next prev parent reply other threads:[~2011-04-07 15:47 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-28 2:55 [RFC PATCH 0/5] Add kernel-offset file and make rcu_read_[un]lock() included Lai Jiangshan
2011-03-28 2:58 ` [RFC PATCH 1/5] Move task's RCU code to rcupdate.h Lai Jiangshan
2011-03-31 11:31 ` Peter Zijlstra
2011-03-31 23:24 ` Paul E. McKenney
2011-03-28 2:58 ` [RFC PATCH 2/5] kbuild: dedumplicated the generating code Lai Jiangshan
2011-03-28 8:31 ` Jan Beulich
2011-03-31 18:26 ` David Howells
2011-03-28 2:59 ` [RFC PATCH 3/5] kbuild: add kernel-offset file Lai Jiangshan
2011-03-31 18:28 ` David Howells
2011-03-28 3:00 ` [RFC PATCH 4/5] RCU: Add TASK_RCU_OFFSET Lai Jiangshan
2011-03-28 8:35 ` Jan Beulich
2011-03-29 9:41 ` Lai Jiangshan
2011-03-29 21:14 ` H. Peter Anvin
2011-03-29 21:31 ` Paul E. McKenney
2011-03-29 21:32 ` H. Peter Anvin
2011-03-29 21:47 ` Paul E. McKenney
2011-03-29 22:01 ` H. Peter Anvin
2011-03-30 0:47 ` Paul E. McKenney
2011-03-30 5:25 ` Lai Jiangshan
2011-03-30 7:22 ` Lai Jiangshan
2011-03-30 10:55 ` Michal Marek
2011-03-30 10:57 ` Peter Zijlstra
2011-03-30 11:46 ` Michal Marek
2011-03-31 1:02 ` Lai Jiangshan
2011-03-31 1:21 ` Paul E. McKenney
2011-03-31 1:53 ` Lai Jiangshan
2011-03-31 23:30 ` Paul E. McKenney
2011-04-01 3:28 ` Paul E. McKenney
2011-03-31 8:04 ` Peter Zijlstra
2011-03-31 9:50 ` Lai Jiangshan
2011-03-31 11:18 ` Peter Zijlstra
2011-04-01 1:57 ` Lai Jiangshan
2011-04-01 11:35 ` Peter Zijlstra
2011-04-05 21:54 ` Paul E. McKenney
2011-04-05 23:07 ` Paul E. McKenney
2011-04-06 8:10 ` Peter Zijlstra
2011-04-06 19:21 ` Paul E. McKenney
2011-04-06 20:13 ` Paul E. McKenney
2011-04-06 21:06 ` Peter Zijlstra
2011-04-06 21:27 ` H. Peter Anvin
2011-04-07 0:30 ` Paul E. McKenney
2011-04-07 5:49 ` Lai Jiangshan
2011-04-07 15:47 ` Paul E. McKenney [this message]
2011-04-07 16:26 ` Paul E. McKenney
2011-04-08 1:26 ` Lai Jiangshan
2011-04-08 5:13 ` Paul E. McKenney
2011-04-11 3:08 ` Lai Jiangshan
2011-04-11 5:12 ` Paul E. McKenney
2011-04-11 6:01 ` Lai Jiangshan
2011-04-11 8:31 ` Lai Jiangshan
2011-04-11 21:02 ` Paul E. McKenney
2011-04-11 21:24 ` Peter Zijlstra
2011-04-22 7:19 ` Lai Jiangshan
2011-04-22 8:10 ` Peter Zijlstra
2011-04-25 7:21 ` Lai Jiangshan
2011-04-23 20:30 ` Paul E. McKenney
2011-04-11 8:33 ` Lai Jiangshan
2011-04-07 7:05 ` [PATCH 1/4] rcu: split rcupdate.h Lai Jiangshan
2011-04-07 7:07 ` [PATCH 2/4] rcu: make rcudpate.h can use struct task_struct Lai Jiangshan
2011-04-07 7:07 ` [PATCH 3/4] rcu: introduce task_rcu_struct and move task's RCU code to rcupdate_defs.h Lai Jiangshan
2011-04-07 13:40 ` Alexey Dobriyan
2011-04-07 7:08 ` [PATCH 4/4] rcu: declare preemptible __rcu_read_[un]lock() as inline function Lai Jiangshan
2011-04-06 17:41 ` [RFC PATCH 4/5] RCU: Add TASK_RCU_OFFSET Paul E. McKenney
2011-03-31 19:28 ` H. Peter Anvin
2011-03-31 19:25 ` H. Peter Anvin
2011-03-28 3:01 ` [RFC PATCH 5/5] RCU: declare preemptible __rcu_read_[un]lock() as inline function Lai Jiangshan
2011-03-28 22:17 ` [RFC PATCH 0/5] Add kernel-offset file and make rcu_read_[un]lock() included Paul E. McKenney
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=20110407154737.GF2262@linux.vnet.ibm.com \
--to=paulmck@linux.vnet.ibm.com \
--cc=JBeulich@novell.com \
--cc=akpm@linux-foundation.org \
--cc=dhowells@redhat.com \
--cc=dipankar@in.ibm.com \
--cc=heukelum@fastmail.fm \
--cc=hpa@linux.intel.com \
--cc=laijs@cn.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mmarek@suse.cz \
--cc=oleg@redhat.com \
--cc=peterz@infradead.org \
--cc=roland@redhat.com \
--cc=rostedt@goodmis.org \
--cc=sam@ravnborg.org \
--cc=tglx@linutronix.de \
/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.