From: Nicola Vetrini <nicola.vetrini@bugseng.com>
To: Jan Beulich <jbeulich@suse.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>,
michal.orzel@amd.com, xenia.ragiadakou@amd.com,
ayan.kumar.halder@amd.com, consulting@bugseng.com,
andrew.cooper3@citrix.com, roger.pau@citrix.com,
Simone Ballarin <simone.ballarin@bugseng.com>,
Doug Goldstein <cardoe@cardoe.com>,
George Dunlap <george.dunlap@citrix.com>,
Julien Grall <julien@xen.org>, Wei Liu <wl@xen.org>,
xen-devel@lists.xenproject.org
Subject: Re: [XEN PATCH][for-4.19 v4 1/8] xen/include: add macro ISOLATE_LOW_BIT
Date: Fri, 17 Nov 2023 10:55:25 +0100 [thread overview]
Message-ID: <8a1313b3ab5ba6dd556cf37409e3b703@bugseng.com> (raw)
In-Reply-To: <b5277391-71bb-42b6-82e4-635dd1361ad3@suse.com>
Hi Jan,
>>>>> While I've committed this patch (hoping that I got the necessary
>>>>> context
>>>>> adjustment right for the
>>>>> automation/eclair_analysis/ECLAIR/deviations.ecl
>>>>> change), I'd like to come back to this before going further with
>>>>> users
>>>>> of
>>>>> the new macro: I still think we ought to try to get to the single
>>>>> evaluation wherever possible. The macro would then be used only in
>>>>> cases
>>>>> where the alternative construct (perhaps an isolate_lsb() macro,
>>>>> living
>>>>> perhaps in xen/bitops.h) cannot be used. ISOLATE_LSB() would then
>>>>> want
>>>>> to
>>>>> gain a comment directing people to the "better" sibling. Thoughts?
>>>>
>>>> Having the users in place would help me estimate the remaining work
>>>> that
>>>> needs to be done on this rule and see if my local counts match up
>>>> with
>>>> the counts in staging.
>>>
>>> By "having the users in place", you mean you want other patches in
>>> this
>>> and the dependent series to be committed as-is (except for the name
>>> change)? That's what I'd like to avoid, as it would mean touching all
>>> those use sites again where the proposed isolate_lsb() could be used
>>> instead. I'd rather see all use sites be put into their final shape
>>> right away.
>>
>> This request is coming a bit late and also after all the patches have
>> been reviewed already. I for one am not looking forward to review them
>> again.
>>
>> That said, if you could be more specified maybe it could become
>> actionable:
>>
>> - do you have a pseudo code implementation of the "better" macro you
>> would like to propose?
>
> May I remind you that I made this request (including a draft
> implementation)
> before already, and Nicola then merely found that the evaluate-once
> form
> simply cannot be used everywhere? Anybody could have thought of the
> option
> of "splitting" the macro. After all I hope that there is no
> disagreement on
> macro arguments better being evaluated just once, whenever possible.
>
>> - do you have an list of call sites you would like to be changed to
>> use
>> the "better" macro?
>
> No, I don't have a list. But the pattern is pretty clear: The "better"
> form
> ought to be used wherever it actually can be used.
>
>> Also, you might remember past discussions about time spent making
>> changes yourself vs. others doing the same. This is one of those cases
>> that it would be faster for you to make the change and send a patch
>> than
>> explaining someone else how to do it, then review the result (and
>> review it again as it probably won't be exactly as you asked the first
>> time.)
>>
>> If you don't want the call sites to be changes twice, may I suggest
>> you
>> provide a patch on top of Nicola's series, I review and ack your
>> patch,
>> and Nicola or I rebase & resend the series so that the call sites are
>> only changes once as you would like? I think that's going to be way
>> faster.
>
> I'll see if I can find time to do so. I don't normally work on top of
> other people's uncommitted patches, though ... So I may also choose to
> go
> a slightly different route. (You realize though that all still pending
> patches using the new macro need touching again anyway, don't you?)
>
> Jan
Then perhaps it's best if I give it a try at doing the single evaluation
macro, so that I can make a series modifying the call sites only once on
top of that and send everything in one go. Before doing that, though,
I'll make a thread where various aspects that are not so clear yet can
be discussed, so that we can devise a robust solution (also to dig this
out of this deep thread).
--
Nicola Vetrini, BSc
Software Engineer, BUGSENG srl (https://bugseng.com)
next prev parent reply other threads:[~2023-11-17 9:55 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <cover.1698410970.git.nicola.vetrini@bugseng.com>
[not found] ` <6efab48e9340916f23c94baf5c189d1d1c6ab7e6.1698410970.git.nicola.vetrini@bugseng.com>
2023-10-27 20:50 ` [XEN PATCH][for-4.19 v4 6/8] x86/mce: Move MC_NCLASSES into the enum mctelem_class Stefano Stabellini
2023-10-31 8:50 ` Nicola Vetrini
[not found] ` <8e56caec1dfa2ef9a528d58935f16c537adfdbea.1698410970.git.nicola.vetrini@bugseng.com>
2023-10-30 15:22 ` [XEN PATCH][for-4.19 v4 4/8] x86_64/mm: express macro CNT using ISOLATE_LOW_BIT Jan Beulich
[not found] ` <dca236bf9199f596bafb35eb48d81adc280d8cca.1698410970.git.nicola.vetrini@bugseng.com>
2023-10-27 20:48 ` [XEN PATCH][for-4.19 v4 1/8] xen/include: add macro ISOLATE_LOW_BIT Stefano Stabellini
2023-10-30 15:40 ` Jan Beulich
2023-10-30 22:44 ` Stefano Stabellini
2023-10-31 7:43 ` Jan Beulich
2023-10-31 8:28 ` Nicola Vetrini
2023-10-31 10:03 ` Nicola Vetrini
2023-10-31 10:20 ` Jan Beulich
2023-10-31 12:07 ` Nicola Vetrini
2023-11-16 8:26 ` Jan Beulich
2023-11-16 10:02 ` Nicola Vetrini
2023-11-16 10:25 ` Jan Beulich
2023-11-17 0:43 ` Stefano Stabellini
2023-11-17 7:07 ` Jan Beulich
2023-11-17 9:55 ` Nicola Vetrini [this message]
2023-11-18 2:20 ` Stefano Stabellini
2023-11-09 7:18 ` Jan Beulich
2023-11-10 0:36 ` Stefano Stabellini
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=8a1313b3ab5ba6dd556cf37409e3b703@bugseng.com \
--to=nicola.vetrini@bugseng.com \
--cc=andrew.cooper3@citrix.com \
--cc=ayan.kumar.halder@amd.com \
--cc=cardoe@cardoe.com \
--cc=consulting@bugseng.com \
--cc=george.dunlap@citrix.com \
--cc=jbeulich@suse.com \
--cc=julien@xen.org \
--cc=michal.orzel@amd.com \
--cc=roger.pau@citrix.com \
--cc=simone.ballarin@bugseng.com \
--cc=sstabellini@kernel.org \
--cc=wl@xen.org \
--cc=xen-devel@lists.xenproject.org \
--cc=xenia.ragiadakou@amd.com \
/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.