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

Change VERIFY to ASSERT in mutex_destroy() #2852

Closed
wants to merge 1 commit into from

Conversation

behlendorf
Copy link
Contributor

There have been multiple reports of 'zdb' tripping the VERIFY in
mutex_destroy() because pthread_mutex_destroy() returns EBUSY.

Exactly how this can happen still needs to be explained, but this
doesn't strictly need to be fatal for non-debug builds. Therefore,
this patch converts the VERIFY to an ASSERT until the root cause
is determined and resolved.

Signed-off-by: Brian Behlendorf behlendorf1@llnl.gov
Issue #2027

@ryao
Copy link
Contributor

ryao commented Nov 3, 2014

@behlendorf The reason people are using zdb in #2027 is to access vdev GUIDs. That suffers from problems where GUIDs on cache devices are not shown and it is a pain to access. Furthermore, zdb is a developer tool that should remain as such. We should merge #2012 to address the needs of users before we implement a workaround so that they can continue using zdb as a hack.

There have been multiple reports of 'zdb' tripping the VERIFY in
mutex_destroy() because pthread_mutex_destroy() returns EBUSY.

Exactly how this can happen still needs to be explained, but this
doesn't strictly need to be fatal for non-debug builds.  Therefore,
this patch converts the VERIFY to an ASSERT until the root cause
is determined and resolved.

Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Issue openzfs#2027
@behlendorf
Copy link
Contributor Author

@ryao we should definitely merge #2012, and I don't think there's anything holding that up now. But that shouldn't prevent us from merging this. Changing this to as ASSERT won't be harmful to users, and developers should already be typically running with ASSERTS enable so no change there. That said, I'd rather get to the root cause of this but at least we can minimize the trouble is causes.

@behlendorf behlendorf added this to the 0.6.4 milestone Feb 6, 2015
@behlendorf
Copy link
Contributor Author

340dfbe Change VERIFY to ASSERT in mutex_destroy()

@behlendorf behlendorf closed this Feb 12, 2015
@behlendorf behlendorf deleted the issue-2027 branch April 19, 2021 19:38
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.

2 participants