>>>>> "Mark" == Mark Lord <kernel@xxxxxxxxxxxx> writes: >> 2) FITRIM doesn't leverage the fact the a TRIM command can handle >> multiple ranges per TRIM command payload. I haven't seen any FITRIM >> vs. wiper.sh benchmarks, so I don't know what impact that has in >> practice. Mark Lord thought that this lacking feature would cause >> FITRIM to take minutes or hours with some hardware. Especially early >> generation SSDs. Mark> If FITRIM is still issuing single-range-at-a-time TRIMs, then I'd Mark> call that a BUG that needs fixing. Doing TRIM like that causes Mark> tons of unnecessary ERASE cycles, shortening the SSD lifetime. It Mark> really needs to batch them into groups of (up to) 64 ranges at a Mark> time (64 ranges fits into a single 512-byte parameter block). We don't support coalescing discontiguous requests into one command. But we will issue contiguous TRIM requests as big as the payload can handle. That's just short of two gigs per command given a 512-byte block. I spent quite a bit of time trying to make coalescing work in the spring. It got very big and unwieldy. When we discussed it at the filesystem summit the consensus was that it was too intrusive to the I/O stack, elevators, etc. I have previously posted a list of reasons why it is hard to support given how our I/O stack works. I can dig them out if there's interest. -- Martin K. Petersen Oracle Linux Engineering -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html