Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[20701] Enforce SHM ports open mode exclusions (backport #4635) #4647

Closed
wants to merge 3 commits into from

Conversation

mergify[bot]
Copy link
Contributor

@mergify mergify bot commented Apr 3, 2024

Description

As originally reported in #4504 a port could be open first with ReadShared and then with ReadExclusive the internal state of the port was incorrectly changed. This meant that the same port could be used at the same time for unicast and multicast.

This PR fixes #4634 by checking incompatibilities inside lock_read_exlcusive / lock_read_shared methods of the Port class.

@Mergifyio backport 2.13.x 2.10.x 2.6.x

Contributor Checklist

  • Commit messages follow the project guidelines.

  • The code follows the style guidelines of this project.

  • Tests that thoroughly check the new feature have been added/Regression tests checking the bug and its fix have been added; the added tests pass locally

  • Any new/modified methods have been properly documented using Doxygen.

  • Changes are ABI compatible.

  • Changes are API compatible.

  • N/A New feature has been added to the versions.md file (if applicable).

  • N/A New feature has been documented/Current behavior is correctly described in the documentation.

  • Applicable backports have been included in the description.

Reviewer Checklist

  • The PR has a milestone assigned.
  • The title and description correctly express the PR's purpose.
  • Check contributor checklist is correct.
  • Check CI results: changes do not issue any warning.
  • Check CI results: failing tests are unrelated with the changes.

This is an automatic backport of pull request #4635 done by [Mergify](https://mergify.com).

* Refs #20701. Added unit regression tests.

Signed-off-by: Miguel Company <miguelcompany@eprosima.com>

* Refs #20701. Added blackbox regression test.

Signed-off-by: Miguel Company <miguelcompany@eprosima.com>

* Refs #20701. Fix issue.

Signed-off-by: Miguel Company <miguelcompany@eprosima.com>

---------

Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
(cherry picked from commit 3d159dc)

# Conflicts:
#	test/blackbox/common/BlackboxTestsTransportSHM.cpp
@mergify mergify bot added the conflicts Backport PR wich git cherry pick failed label Apr 3, 2024
Copy link
Contributor Author

mergify bot commented Apr 3, 2024

Cherry-pick of 3d159dc has failed:

On branch mergify/bp/2.6.x/pr-4635
Your branch is up to date with 'origin/2.6.x'.

You are currently cherry-picking commit 3d159dc8c.
  (fix conflicts and run "git cherry-pick --continue")
  (use "git cherry-pick --skip" to skip this patch)
  (use "git cherry-pick --abort" to cancel the cherry-pick operation)

Changes to be committed:
	modified:   src/cpp/rtps/transport/shared_mem/SharedMemGlobal.hpp
	modified:   test/unittest/transport/SharedMemTests.cpp

Unmerged paths:
  (use "git add <file>..." to mark resolution)
	both modified:   test/blackbox/common/BlackboxTestsTransportSHM.cpp

To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally

@JesusPoderoso JesusPoderoso added this to the v2.6.8 milestone Apr 3, 2024
@Mario-DL
Copy link
Member

Mario-DL commented Apr 4, 2024

@MiguelCompany would you mind addressing the conflicts here ?

@Mario-DL
Copy link
Member

Mario-DL commented Apr 8, 2024

@MiguelCompany Friendly ping here

Signed-off-by: Miguel Company <MiguelCompany@eprosima.com>
@MiguelCompany MiguelCompany removed the conflicts Backport PR wich git cherry pick failed label Apr 10, 2024
@Mario-DL Mario-DL added the ci-pending PR which CI is running label Apr 10, 2024
@Mario-DL Mario-DL self-requested a review April 10, 2024 07:02
@Mario-DL
Copy link
Member

@richiprosima please test this

@Mario-DL Mario-DL modified the milestones: v2.6.8, v2.6.9 Apr 23, 2024
Signed-off-by: Miguel Company <miguelcompany@eprosima.com>
@Mario-DL Mario-DL requested review from Mario-DL and removed request for Mario-DL May 27, 2024 13:07
@Mario-DL
Copy link
Member

Internally agree to close this PR

@Mario-DL Mario-DL closed this Jun 26, 2024
@Mario-DL Mario-DL reopened this Jun 26, 2024
@Mario-DL Mario-DL closed this Jun 26, 2024
@mergify mergify bot deleted the mergify/bp/2.6.x/pr-4635 branch June 26, 2024 13:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ci-pending PR which CI is running
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants