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

Set the maximum ZVOL transfer size correctly #3214

Closed
wants to merge 1 commit into from

Conversation

dweeezil
Copy link
Contributor

ZoL had been setting max_sectors to UINT_MAX, but until Linux 3.19, it
the kernel artifically capped it at 1024 (BLK_DEF_MAX_SECTORS).
This cap was removed in torvalds/linux@34b48db. This patch changes
it to DMU_MAX_ACCESS (in sectors) and also changes the ASSERT in
dmu_tx_hold_write() to allow the maximum transfer size.

ZoL had been setting max_sectors to UINT_MAX, but until Linux 3.19, it
the kernel artifically capped it at 1024 (BLK_DEF_MAX_SECTORS).
This cap was removed in torvalds/linux@34b48db.  This patch changes
it to DMU_MAX_ACCESS (in sectors) and also changes the ASSERT in
dmu_tx_hold_write() to allow the maximum transfer size.
@dweeezil
Copy link
Contributor Author

I'm a little nervous about the ASSERT change in dmu_tx_hold_write() only because the "<" test has been in illumos for so long, however this does seem to work properly on zvols under light testing where the maximum transfer size is used.

@behlendorf behlendorf added this to the 0.6.4 milestone Mar 24, 2015
@behlendorf
Copy link
Contributor

@dweeezil The change to the ASSERT looks right to me, I'm a little surprised that's never come up before. We should get pretty decent test coverage on this in the buildbots so we'll see.

@kernelOfTruth
Copy link
Contributor

https://lkml.org/lkml/2014/9/6/123

well it's unfortunate that all of the older kernels seem to be left in the dust with this since performance-enhancing changes aren't backported

perhaps Redhat, Suse, Oracle will backport this change (and related commits)

@behlendorf
Copy link
Contributor

Merged as:

ded576e Set the maximum ZVOL transfer size correctly

@behlendorf behlendorf closed this Mar 25, 2015
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.

None yet

3 participants