Re: [RFC PATCH 4/5] RCU: Add TASK_RCU_OFFSET

From: Lai Jiangshan
Date: Thu Mar 31 2011 - 21:55:58 EST


On 03/31/2011 07:18 PM, Peter Zijlstra wrote:
> On Thu, 2011-03-31 at 17:50 +0800, Lai Jiangshan wrote:
>> On 03/31/2011 04:04 PM, Peter Zijlstra wrote:
>>> On Thu, 2011-03-31 at 09:02 +0800, Lai Jiangshan wrote:
>>>> I like this cleanup, could you continue for this hard job? I will help
>>>> you if required.
>>>>
>>>> Ingo & Peter - will you accept the patches when it is done.
>>>>
>>> No, like I said, I think the proposed patch is utterly horrid.
>>>
>>
>> But how about my kernel-offset.c patch? It is clean & simple,
>> it just seems not so normal.
>>
>> If the proposed splitting patch is horrid, I think we will try to
>> update it as you expect.
>>
>> If splitting sched.h is wrong, I will try to persuade more people
>> accept the kernel-offset.c patch.
>
> Well, I'm all for cleaning up sched.h, it includes way too much things
> not strongly related to kernel/sched*.c like a lot of the signal things
> and the misnamed signal_struct (should be called process_struct or
> somesuch).
>
> That also causes the inversion between sched.h and wait.h
>
> What I don't like is those _types.h headers, and definitely not the
> massive explosion of those as per the proposed patch.
>
> Nor do I quite get why all that is needed, sched_types which would
> define task_struct still needs the new task_rcu_struct bits, and as per
> the patch you need to split the rcu headers into two. Once you've done
> that, I don't see why sched.h still needs splitting too.
>
>

"struct task_rcu_struct" is just a cleanup patch.

We are trying to use inlined read_read_[un]lock(), it is required that sched.h
needs include rcupdate.h which causes many recursive including. Splitting rcupdate.h
only does not help.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/