skiselkov commented on this pull request.


> +              * threads because the trim rate might have changed above.
+                */
+               cv_broadcast(&spa->spa_man_trim_update_cv);
+               mutex_exit(&spa->spa_man_trim_lock);
+               return;
+       }
+       spa_man_trim_taskq_create(spa);
+       spa->spa_man_trim_stop = B_FALSE;
+
+       spa_event_notify(spa, NULL, ESC_ZFS_TRIM_START);
+       spa_config_enter(spa, SCL_CONFIG, FTAG, RW_READER);
+       for (uint64_t i = 0; i < spa->spa_root_vdev->vdev_children; i++) {
+               vdev_t *vd = spa->spa_root_vdev->vdev_child[i];
+               vdev_trim_info_t *vti = kmem_zalloc(sizeof (*vti), KM_SLEEP);
+               vti->vti_vdev = vd;
+               vti->vti_done_cb = (void (*)(void *))spa_vdev_man_trim_done;

Again, I'd like to keep the mechanism generic.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/openzfs/openzfs/pull/172#discussion_r116135111
------------------------------------------
openzfs-developer
Archives: https://openzfs.topicbox.com/groups/developer/
Powered by Topicbox: https://topicbox.com

Reply via email to