Re: [PATCH 2/3] toyrcu: Trivial typo fixes (rcu_idx -> rcu_refcnt)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2017/06/21 10:45:41 -0700, Paul E. McKenney wrote:
> On Wed, Jun 21, 2017 at 07:55:34AM +0900, Akira Yokosawa wrote:
>> On 2017/06/20 23:28, Akira Yokosawa wrote:
>>> >From db0fd6b383b551eabecb12dfa21e42093f338b2f Mon Sep 17 00:00:00 2001
>>> From: Akira Yokosawa <akiyks@xxxxxxxxx>
>>> Date: Mon, 19 Jun 2017 23:55:31 +0900
>>> Subject: [PATCH 2/3] toyrcu: Trivial typo fixes (rcu_idx -> rcu_refcnt)
>>>
>>> Signed-off-by: Akira Yokosawa <akiyks@xxxxxxxxx>
>>> ---
>>>  appendix/toyrcu/toyrcu.tex | 12 ++++++------
>>>  1 file changed, 6 insertions(+), 6 deletions(-)
>>>
>>> diff --git a/appendix/toyrcu/toyrcu.tex b/appendix/toyrcu/toyrcu.tex
>>> index 79fbe33..a7bf6ca 100644
>>> --- a/appendix/toyrcu/toyrcu.tex
>>> +++ b/appendix/toyrcu/toyrcu.tex
>>> @@ -524,10 +524,10 @@ by complementing the value of \co{rcu_idx}, as in \co{rcu_idx = !rcu_idx}.
>>>  Suppose that the old value of \co{rcu_idx} was zero, so that the new
>>>  value is one.
>>>  New readers that arrive after the complement operation will increment
>>> -\co{rcu_idx[1]}, while the old readers that previously incremented
>>> -\co{rcu_idx[0]} will decrement \co{rcu_idx[0]} when they exit their
>>> +\co{rcu_refcnt[1]}, while the old readers that previously incremented
>>> +\co{rcu_refcnt[0]} will decrement \co{rcu_refcnt[0]} when they exit their
>>>  RCU read-side critical sections.
>>> -This means that the value of \co{rcu_idx[0]} will no longer be incremented,
>>> +This means that the value of \co{rcu_refcnt[0]} will no longer be incremented,
>>>  and thus will be monotonically decreasing.\footnote{
>>>  	There is a race condition that this ``monotonically decreasing''
>>>  	statement ignores.
>>> @@ -616,11 +616,11 @@ Lines~6 and 19 acquire and release \co{rcu_gp_lock} in order to
>>>  prevent more than one concurrent instance of \co{synchronize_rcu()}.
>>>  Lines~7-8 pick up the value of \co{rcu_idx} and complement it,
>>>  respectively, so that subsequent instances of \co{rcu_read_lock()}
>>> -will use a different element of \co{rcu_idx} that did preceding
>>> +will use a different element of \co{rcu_refcnt} that did preceding
>>>  instances.
>>
>> I have a little trouble with this sentence. Do you mean:
>>
>>              ..., so that subsequent instances of \co{rcu_read_lock()}
>> will use a different element of \co{rcu_refcnt} from the one did preceding
>> instances.                                      
> 
> Just to fully illustrate:
> 
> 1.	Suppose that rcu_idx is initially zero.
> 
> 2.	Any rcu_read_lock() invocations running at this point will
> 	therefore be incrementing rcu_refcnt[0].
> 
> 3.	A synchronize_srcu() instance now complements rcu_idx, so that
> 	its new value is one.
> 
> 4.	Any rcu_read_lock() invocations from step 2 that fetched rcu_idx
> 	before step 3 completed will still increment rcu_refcnt[0].
> 
> 5.	However, any subsequent rcu_read_lock() invocations will instead
> 	increment rcu_refcnt[1].  (At least until the next invocation
> 	of synchronize_rcu().)
> 
> Does that help, or am I missing the point of your question?

Thanks. This is what I guessed you mean.

So what bothered me was the structure of the clause. I rarely see a sentence like:

    I will buy a different model of PC that did you.

I can't figure out the grammatical role of "that" here.

           Thanks, Akira

> 
> 							Thanx, Paul
> 
>> ???
>>
>>        Thanks, Akira
>>> -Lines~10-12 then wait for the prior element of \co{rcu_idx} to
>>> +Lines~10-12 then wait for the prior element of \co{rcu_refcnt} to
>>>  reach zero, with the memory barrier on line~9 ensuring that the check
>>> -of \co{rcu_idx} is not reordered to precede the complementing of
>>> +of \co{rcu_refcnt} is not reordered to precede the complementing of
>>>  \co{rcu_idx}.
>>>  Lines~13-18 repeat this process, and line~20 ensures that any
>>>  subsequent reclamation operations are not reordered to precede the
>>>
>>
> 
> 

--
To unsubscribe from this list: send the line "unsubscribe perfbook" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux