On 08/12/2020 14:13, Javier González wrote: > On 08.12.2020 12:37, Johannes Thumshirn wrote: >> On 08/12/2020 13:22, Javier González wrote: >>> Good idea. Are you thinking of a sysfs entry to select the backend? >> >> Not sure on this one, initially I thought of a sysfs file, but then >> how would you do it. One "global" sysfs entry is probably a bad idea. >> Having one per block device to select native vs emulation maybe? And >> a good way to benchmark. > > I was thinking a per block device to target the use case where a certain > implementation / workload is better one way or the other. Yes something along those lines. >> >> The other idea would be a benchmark loop on boot like the raid library >> does. >> >> Then on the other hand, there might be workloads that run faster with >> the emulation and some that run faster with the hardware acceleration. >> >> I think these points are the reason the last attempts got stuck. > > Yes. I believe that any benchmark we run would be biased in a certain > way. If we can move forward with a sysfs entry and default to legacy > path, we would not alter current behavior and enable NVMe copy offload > (for now) for those that want to use it. We can then build on top of it. > > Does this sound like a reasonable approach? > Yes this sounds like a reasonable approach to me.