-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
zv_suspend_lock in zvol_open()/zvol_release() #6342
Conversation
Turned the crank to re-run the tests. |
It appears that SPL build is broken for Kernel.org kernel ? |
@bprotopopov yes. The 4.12 kernel was released a week ago allowing more disruptive changes to be merged for the latest kernel. We'll need to look in to exact what changes and add some additional compatibility code to deal with it. Ignore those failures for now. |
zvol_misc_002_pos seems to be failing on Fedora 26 with
|
#6297 was opened to track the |
@behlendorf could this be a test VM configuration issue (not enough disk space provisioned) ? |
@bprotopopov when you get a moment could you please rebase this on master. |
@behlendorf will do |
This has run in our test cloud for a couple of weeks - along with the zil pipelining, zvol backed cinder ops are noticeably snappier. |
Acquire zv_suspend_lock on first open and last close only. Signed-off-by: Boris Protopopov <boris.protopopov@actifio.com>
rebased on master |
Acquire zv_suspend_lock on first open and last close only. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Boris Protopopov <boris.protopopov@actifio.com> Closes openzfs#6342
Acquire zv_suspend_lock on first open and last close only. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Boris Protopopov <boris.protopopov@actifio.com> Closes openzfs#6342
Acquire zv_suspend_lock on first open and last close only.
Signed-off-by: Boris Protopopov boris.protopopov@actifio.com
Description
zv_suspend_lock is being acquired in zvol_open()/zvol_release() unconditionally. This lock might be held for a long time across zvol_suspend()/zvol_resume() (e.g. during zfs recv), and therefore, it is desirable to avoid taking the lock, unless it is actually needed (at the time of the first open and last close).
Motivation and Context
Improve concurrency and latency of the zvol_open()/zvol_release() operations.
This is related to #6263 in that it might make it simpler to reproduce the issue.
How Has This Been Tested?
standard zfs-test run
Types of changes
Checklist:
Signed-off-by
.