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

Remove recursive mutex & fix unbalanced locking in TestPlatformMgr #1587

Merged
merged 1 commit into from
Jul 14, 2020

Conversation

mspang
Copy link
Contributor

@mspang mspang commented Jul 14, 2020

We shouldn't use recursive mutexes for synchronization as they greatly
complicate analysis and maintenance.

fixes #1584

We shouldn't use recursive mutexes for synchronization as they greatly
complicate analysis and maintenance.
@github-actions
Copy link

Size increase report for "nrf-example-build"

File Section File VM
Full report output
BLOAT REPORT

Files found only in the build output:
    report.csv

Comparing ./master_artifact/chip-nrf52840-lock-example.out and ./pull_artifact/chip-nrf52840-lock-example.out:

sections,vmsize,filesize


@github-actions
Copy link

Size increase report for "linux-example-build"

File Section File VM
Full report output
BLOAT REPORT

Files found only in the build output:
    report.csv

Comparing ./master_artifact/chip-standalone-demo.out and ./pull_artifact/chip-standalone-demo.out:

sections,vmsize,filesize


@github-actions
Copy link

Size increase report for "esp32-example-build"

File Section File VM
Full report output
BLOAT REPORT

Files found only in the build output:
    report.csv

Comparing ./master_artifact/chip-wifi-echo.elf and ./pull_artifact/chip-wifi-echo.elf:

sections,vmsize,filesize


@github-actions
Copy link

Size increase report for "gn_nrf-example-build"

File Section File VM
Full report output
BLOAT REPORT

Files found only in the build output:
    report.csv


@github-actions
Copy link

Size increase report for "gn_linux-example-build"

File Section File VM
Full report output
BLOAT REPORT

Files found only in the build output:
    report.csv


Copy link
Contributor

@turon turon left a comment

Choose a reason for hiding this comment

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

LGTM 👍

@andy31415 andy31415 merged commit 475b533 into project-chip:master Jul 14, 2020
kedars pushed a commit to kedars/connectedhomeip that referenced this pull request Jul 19, 2020
…roject-chip#1587)

We shouldn't use recursive mutexes for synchronization as they greatly
complicate analysis and maintenance.
kedars pushed a commit to kedars/connectedhomeip that referenced this pull request Jul 19, 2020
…roject-chip#1587)

We shouldn't use recursive mutexes for synchronization as they greatly
complicate analysis and maintenance.
kedars pushed a commit to kedars/connectedhomeip that referenced this pull request Jul 19, 2020
…roject-chip#1587)

We shouldn't use recursive mutexes for synchronization as they greatly
complicate analysis and maintenance.
#else
#error "No defined static initializer for POSIX Threads recursive mutex!"
#endif // defined(PTHREAD_RECURSIVE_MUTEX_INITIALIZER)
mChipStackLock = PTHREAD_MUTEX_INITIALIZER;
Copy link
Contributor

Choose a reason for hiding this comment

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

Did we lose some portability here?

kedars pushed a commit to kedars/connectedhomeip that referenced this pull request Jul 21, 2020
…roject-chip#1587)

We shouldn't use recursive mutexes for synchronization as they greatly
complicate analysis and maintenance.
kedars pushed a commit to kedars/connectedhomeip that referenced this pull request Jul 21, 2020
…roject-chip#1587)

We shouldn't use recursive mutexes for synchronization as they greatly
complicate analysis and maintenance.
@mspang mspang deleted the for-chip/mutex branch August 14, 2020 20:17
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.

TestPlatformMgr is flaky on Linux
6 participants