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

Increasing zfs_vdev_aggregation_limit with zvols #6979

Closed
zielony360 opened this issue Dec 18, 2017 · 5 comments
Closed

Increasing zfs_vdev_aggregation_limit with zvols #6979

zielony360 opened this issue Dec 18, 2017 · 5 comments

Comments

@zielony360
Copy link

System information

Type Version/Name
Distribution Name Debian
Distribution Version 7
Linux Kernel 4.0.4
Architecture x86_64
ZFS Version 0.6.5.7
SPL Version 0.6.5.7

Describe the problem you're observing

Hello,

we have pool consisting 5 x 10-disk raidz2 group and using zvols with volblocksize=128k, shared through LIO FC target. Due to the fact that zfs_vdev_aggregation_limit is limited to 128k too, writes on singular disk are very small, like 13 kB average, what causes performance issues. Unfortunately, there is no large blocks for zvols to prevent it.

My questions are:

  1. Can I somehow safely increase zfs_vdev_aggregation_limit to 512 kB with existing configuration?
  2. If not, how can I migrate to large blocks datasets using the same pool? I mean I would like to create datasets, set recordsize=512k on them, but also raise zfs_vdev_aggregation_limit to make it sensible. For some time zvols will coexist with datasets during such migration.

Describe how to reproduce the problem

Create a pool with wide raidz2 vdevs and use zvols.

Include any warning/errors/backtraces from the system logs

@zielony360
Copy link
Author

zielony360 commented Dec 18, 2017

I think #4512 may be also related to the case, as we have no merges on physical block devices (HDDs). Maybe if there are some merges on HDDs, then I won't have to cope with higher aggregating on vdevs.

Can we benefit somehow from 05431b4 included in 0.7.4?

@gmelikov
Copy link
Member

zfs_vdev_aggregation_limit size was changed in master branch (last comment with changes d4a72f2),
and you can change it manually in 0.7.* release too (for ex. echo '1048576' > /sys/module/zfs/parameters/zfs_vdev_aggregation_limit)

feel free to reopen the issue if it didn't help.

@zielony360
Copy link
Author

@gmelikov Does this commit apply to zvols too?

@gmelikov
Copy link
Member

@zielony360 IIRC zfs_vdev* parameters are for vdevs, not zvol/dataset specific.

@behlendorf
Copy link
Contributor

@zielony360 yes it applies to any IO issued by ZFS to the underlying devices.

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

No branches or pull requests

3 participants