Skip to contentSkip to conversation

Using C11 atomic semantic

dpdk-dev Thomas Monjalon 2 participants 4 messages Jul 20, 2020

lore
Share & tools
lore
#0 lore raw

In the techboard of April 22, it has been decided to block patches using rte_atomicNN_xx and rte_smp_*mb APIs, starting DPDK 20.08. Meeting minutes:

	http://mails.dpdk.org/archives/dev/2020-April/165143.html

Deprecation notice:
http://doc.dpdk.org/guides/rel_notes/deprecation.html

Some doc has been submitted to help understanding how to manage atomics:
http://doc .dpdk.org/guides/prog_guide/writing_efficient_code.html#locks-and-atomic-operations

Unfortunately the tool to check new code was merged last week:

	http://git.dpdk.org/dpdk/commit/?id=f1602b4a86

As a consequence, I propose to apply the "reject rule" starting DPDK 20.11.

Can we make this rule better advertised with an announce message? Are the current technical explanations enough?
If not, it would be wonderful to have a blog post explaining the details, as part of an announce.

#1 lore raw

+Ruifeng

Quoted 16 lines

-----Original Message-----
From: Thomas Monjalon <[email protected]>
Sent: Monday, July 20, 2020 10:34 AM
To: Honnappa Nagarahalli <[email protected]>
Cc: [email protected]; [email protected]; [email protected]; Phil Yang <[email protected]>; [email protected]
Subject: Using C11 atomic semantic

In the techboard of April 22, it has been decided to block patches using rte_atomicNN_xx and rte_smp_*mb APIs, starting DPDK 20.08. Meeting minutes:

	http://mails.dpdk.org/archives/dev/2020-April/165143.html

Deprecation notice:
http://doc.dpdk.org/guides/rel_notes/deprecation.html

Some doc has been submitted to help understanding how to manage atomics:

Quoted 8 lines
	http://doc
	.dpdk.org/guides/prog_guide/writing_efficient_code.html#locks-and-

atomic-operations

Unfortunately the tool to check new code was merged last week:

	http://git.dpdk.org/dpdk/commit/?id=f1602b4a86

As a consequence, I propose to apply the "reject rule" starting DPDK 20.11.

As far as I know no patch with rte_atomic has gone in 20.08 so far. Are there any patches in RC2/RC3 that need rte_atomic APIs?

Quoted 2 lines

Can we make this rule better advertised with an announce message?

Do you mean an email on dpdk-announce mailing list?

Quoted 1 line

Are the current technical explanations enough?

The documentation patch you referenced above covers most common cases people will encounter. Even the rte_ring/rte_stack algorithms work on the same principles.

Quoted 2 lines

If not, it would be wonderful to have a blog post explaining the details, as part of an announce.

This is in the works. The plan is to send it to you soon and get it out along with the release.

Quoted 1 line
#2 lore raw

20/07/2020 17:44, Honnappa Nagarahalli:

Quoted 13 lines

From: Thomas Monjalon <[email protected]>

Quoted 12 lines

In the techboard of April 22, it has been decided to block patches using rte_atomicNN_xx and rte_smp_*mb APIs, starting DPDK 20.08. Meeting minutes:

	http://mails.dpdk.org/archives/dev/2020-April/165143.html

Deprecation notice:
http://doc.dpdk.org/guides/rel_notes/deprecation.html

Some doc has been submitted to help understanding how to manage atomics:
http://doc .dpdk.org/guides/prog_guide/writing_efficient_code.html#locks-and-
atomic-operations

Quoted 6 lines
Quoted 4 lines

Unfortunately the tool to check new code was merged last week:

	http://git.dpdk.org/dpdk/commit/?id=f1602b4a86

As a consequence, I propose to apply the "reject rule" starting DPDK 20.11.

As far as I know no patch with rte_atomic has gone in 20.08 so far. Are there any patches in RC2/RC3 that need rte_atomic APIs?

Yes we have the case of an additional call added in 20.08-rc2 in mlx5 (not yet converted to C11 atomics).

Quoted 3 lines
Quoted 1 line

Can we make this rule better advertised with an announce message?

Do you mean an email on dpdk-announce mailing list?

Yes

Quoted 8 lines
Quoted 1 line

Are the current technical explanations enough?

The documentation patch you referenced above covers most common cases people will encounter. Even the rte_ring/rte_stack algorithms work on the same principles.

Quoted 2 lines

If not, it would be wonderful to have a blog post explaining the details, as part of an announce.

This is in the works. The plan is to send it to you soon and get it out along with the release.

Great

#3 lore raw

<snip>

Quoted 20 lines

20/07/2020 17:44, Honnappa Nagarahalli:

Quoted 10 lines

From: Thomas Monjalon <[email protected]>

Quoted 9 lines

In the techboard of April 22, it has been decided to block patches using rte_atomicNN_xx and rte_smp_*mb APIs, starting DPDK 20.08. Meeting minutes:

	http://mails.dpdk.org/archives/dev/2020-April/165143.html

Deprecation notice:
http://doc.dpdk.org/guides/rel_notes/deprecation.html

Some doc has been submitted to help understanding how to manage

atomics:

Quoted 1 line
Quoted 1 line
	http://doc

.dpdk.org/guides/prog_guide/writing_efficient_code.html#locks-and-

Quoted 5 lines
Quoted 5 lines

atomic-operations

Unfortunately the tool to check new code was merged last week:

	http://git.dpdk.org/dpdk/commit/?id=f1602b4a86
Quoted 7 lines
Quoted 3 lines
Quoted 1 line

As a consequence, I propose to apply the "reject rule" starting DPDK 20.11.

As far as I know no patch with rte_atomic has gone in 20.08 so far. Are there

any patches in RC2/RC3 that need rte_atomic APIs?

Yes we have the case of an additional call added in 20.08-rc2 in mlx5 (not yet converted to C11 atomics).

There is one patch that Phil had put together [1] for mlx5.
Since this is a unconverted module, suggest allowing for 20.08 instead of removing the 'reject rule' patch.

[1] https://patches.dpdk.org/patch/72007/

Quoted 21 lines
Quoted 4 lines
Quoted 2 lines

Can we make this rule better advertised with an announce message?

Do you mean an email on dpdk-announce mailing list?

Yes

Quoted 3 lines
Quoted 1 line

Are the current technical explanations enough?

The documentation patch you referenced above covers most common cases

people will encounter. Even the rte_ring/rte_stack algorithms work on the same principles.

Quoted 5 lines
Quoted 3 lines

If not, it would be wonderful to have a blog post explaining the details, as part of an announce.

This is in the works. The plan is to send it to you soon and get it out along

with the release.

Great