Skip to content

[2026-03 LWG Motion 33] P3941R4 Scheduler Affinity#8925

Open
jensmaurer wants to merge 3 commits intomainfrom
motions-2026-03-lwg-33
Open

[2026-03 LWG Motion 33] P3941R4 Scheduler Affinity#8925
jensmaurer wants to merge 3 commits intomainfrom
motions-2026-03-lwg-33

Conversation

@jensmaurer
Copy link
Copy Markdown
Member

@jensmaurer jensmaurer commented Apr 6, 2026

Fixes NB US 232-366, US 233-365, US 234-364, US 235-363, US 236-362 (C++26 CD).

Fixes #8867

Also fixes cplusplus/papers#2594
Also fixes cplusplus/nbballot#937
Also fixes cplusplus/nbballot#938
Also fixes cplusplus/nbballot#939
Also fixes cplusplus/nbballot#940
Also fixes cplusplus/nbballot#941

@jensmaurer jensmaurer added this to the post-2026-03 milestone Apr 6, 2026
Fixes NB US 232-366, US 233-365, US 234-364, US 235-363, US 236-362 (C++26 CD).
@jensmaurer jensmaurer force-pushed the motions-2026-03-lwg-33 branch from c3aed96 to 91743d3 Compare April 6, 2026 20:28
Comment thread source/exec.tex Outdated
Comment thread source/exec.tex Outdated
Comment thread source/exec.tex Outdated
Comment thread source/exec.tex Outdated
Comment thread source/exec.tex Outdated
Comment thread source/exec.tex Outdated
@jensmaurer jensmaurer force-pushed the motions-2026-03-lwg-33 branch from 33a81fb to 3ff23b5 Compare April 7, 2026 10:22
@jensmaurer jensmaurer requested a review from eisenwave April 7, 2026 10:22
Copy link
Copy Markdown
Contributor

@dietmarkuehl dietmarkuehl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe one change was omitted: adding the get_start_scheduler object.

Another change was potentially garbled in the paper. The paper assumed P3826 (although revision 3) was applied (first editors note) and, thus, the reference to wasn't there. get-domain-early doesn't exist anymore based on P3826r5. If the corresponding change gets applied when P3826 get applied it doesn't have to done here.

While reviewing I noticed that I didn't mark at least one of the editor's note as such and, I think, some minor fixes were applied during editing: thank you very much!

Comment thread source/exec.tex

inline constexpr get_domain_t @\libglobal{get_domain}@{};
inline constexpr get_scheduler_t @\libglobal{get_scheduler}@{};
inline constexpr get_delegation_scheduler_t @\libglobal{get_delegation_scheduler}@{};
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is missing the definition of the inline object definition:

Suggested change
inline constexpr get_start_scheduler_t @\libglobal{get_start_scheduler}@{};

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed

Comment thread source/exec.tex Outdated
expression-equivalent to:
\begin{codeblock}
transform_sender(@\exposid{get-domain-early}@(sndr), @\exposid{make-sender}@(affine_on, sch, sndr))
transform_sender(@\exposid{get-domain-early}@(sndr), @\exposid{make-sender}@(affine_on, env<>(), sndr))
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The mark-up in the paper is certainly not right because it doesn't mention the transform_sender(get-domain-early(sender)): it should have had it and removed it! get-domain-early doesn't exist anymore. I believe the target expression is correct:

Suggested change
transform_sender(@\exposid{get-domain-early}@(sndr), @\exposid{make-sender}@(affine_on, env<>(), sndr))
@\exposid{make-sender}@(affine_on, env<>(), sndr)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed

@jensmaurer
Copy link
Copy Markdown
Member Author

@dietmarkuehl , there are still a number of mentions of "get-domain-early", so I don't know where we are with those.

@dietmarkuehl
Copy link
Copy Markdown
Contributor

@dietmarkuehl , there are still a number of mentions of "get-domain-early", so I don't know where we are with those.

This paper isn't meant to fix these: I thought these should be fixed by P3826r5. Looking at the current PR for P3826r5 I see that currently only one place is addressed by the paper has a total of 12 places where "get-domain-early" gets removed. It seems the current [exec] wording has 14 places, though. Looking at the paper more closely: the two remaining places are removed via wording which isn't a diff: "Remove the prototypes of the get-domain-early and get-domain-late functions."

P3914R4 shouldn't reintroduce any uses of "get-domain-early" (and I don't think the wording does): there is no mention of "get-domain-early" in the changed text in the PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[2026-03 LWG Motion 33] P3941R4 Scheduler Affinity P3941 R3 Scheduler Affinity

3 participants