@ahrens I tried to implement the metaslab weight adjustment when taking chunks out of the metaslab due to trimming. The case when the metaslab is loaded is easy. However, the unloaded case, where we only have the spacemap histogram, is not possible. Here's why: I can construct a "negative" histogram from the chunks being trimmed, that's easy. However, I can't simply subtract the values in the buckets of the negative histogram from the spacemap histogram. That's because without the spacemap loaded into a range tree, I can't know which free extents I need to reduce in size and consequently move them between histogram buckets. Put simply, without a range tree in hand, I can't know where the trimming extents came from.
-- 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#issuecomment-300959550 ------------------------------------------ openzfs-developer Archives: https://openzfs.topicbox.com/groups/developer/ Powered by Topicbox: https://topicbox.com
