-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
WIP: zvol: factor out zvol write & discard into common code #11657
base: master
Are you sure you want to change the base?
WIP: zvol: factor out zvol write & discard into common code #11657
Conversation
This is a draft patch as a basis for discussion. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems like good cleanup to me.
For any place where this is not the case we should fix it. The idea behind introducing the |
cffdf1c
to
1e07699
Compare
I started to rebase this patch onto the
|
|
I haven't even build-tested this, but something along the lines of the below?
|
I'm not sure whether this is a great idea because the uio type is
different on the platforms and not treated as an opaque type in the
code.
My motivation for sharing the code is a larger refactoring of ZVOL
replay (not part of this patch) that aligns ZVOL replay with how the ZPL
does replay in an effort to enforce some rather ... intricate .. details
of ZIL replay through assertions in the ZIL code.
Specifically, ZPL currently replays by
ZVOL currently doesn't call
zil_replaying()
which means that we don'trecord replay progress. This is just barely acceptable for ZVOLs because
all log entries are idempotent. But since the ZIL is shared between ZPL
and ZVOL it prevents us from enforcing in the ZIL code that a zfs_replay_OP
calls zil_replaying() to confirm successful replay.