[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <30F06C03-6950-4E2B-B3CE-3939B3CDD295@joelfernandes.org>
Date: Thu, 11 May 2023 21:15:17 -0700
From: Joel Fernandes <joel@...lfernandes.org>
To: "Zhuo, Qiuxu" <qiuxu.zhuo@...el.com>
Cc: paulmck@...nel.org, rcu@...r.kernel.org,
linux-kernel@...r.kernel.org, kernel-team@...a.com,
rostedt@...dmis.org
Subject: Re: [PATCH rcu 3/6] rcu/rcuscale: Move rcu_scale_*() after kfree_scale_cleanup()
> On May 11, 2023, at 8:20 PM, Zhuo, Qiuxu <qiuxu.zhuo@...el.com> wrote:
>
>
>>
>> From: Paul E. McKenney <paulmck@...nel.org>
>> ...
>>>> I wish diff was better at showing what really changed. The meld tool
>>>> can help but its gui...
>>>>
>>>> Should I run meld later (I'm out at a conference so no access to
>>>> meld-capable
>>>> machines) or are we sufficiently confident that the lines were moved
>>>> as-is ? :)
>>>>
>>>
>>> Thank you, Joel for this concern. Good to know the meld diff GUI tool.
>>> I just run the command below and confirmed that the lines were moved
>>> as-is: rcu_scale_{cleanup,shutdown}() follows kfree_scale_cleanup().
>>> You may double check it ;-).
>>>
>>> meld --diff ./rcuscale.c.before ./rcuscale.c.after
>>
>> Nice, thank you both!
>>
>> Another option is to check out the commit corresponding to this patch, then
>> do "git blame -M kernel/rcu/rcuscale.c". Given a move-only commit, there
>> should be no line tagged with this commit's SHA-1.
>
> Just had a good experiment with the "git blame -M" option:
> - Used this option to prove a move-only commit quickly (no line tagged with that commit) (the fastest method to me).
> - Then just only needed to quickly check the positions of the moved code chunk by myself (easy).
>
> Thank you, Paul for sharing this. It's very useful to me.
Looks good to me as well and thank you both for sharing the tips.
- Joel
>
>> They say that another option is to use "git diff --color-moved", which colors
>> the changes. That it does, but I am hard-pressed to work out exactly what
>> distinguishes a moved hunk from an added or removed hunk.
>> Fall colors vs. winter colors? Exterior vs. interior? Any particular decade in
>> the endless rush of changes to fashion? Perhaps someone with normal color
>> vision (to say nothing of better fashion sense) could try it.
>>
>> On the other hand: "default: Is a synonym for zebra. This may change to a
>> more sensible mode in the future." So maybe it is not just me. ;-)
>>
>> You can also apparently choose colors using "color.diff.newMoved" and
>> "color.diff.oldMoved" when using "--color-moved=plain".
>>
>> But "git diff --color-moved=dimmed-zebra" might be more to the point for
>> someone like me. I would need to experiment with it more in order to
>> confirm my hypotheses about what it is doing. To say nothing of building
>
> Yup, this looks a bit painful for me too (need experiments to confirm hypotheses ...).
>
>> trust in it. Plus I have to open a color terminal to use it effectively.
>> So maybe "git blame -M" continues to be the tool for me?
>>
>> Thanx, Paul
Powered by blists - more mailing lists