2 ms·
Like others, it's unclear to me that AVX is responsible for the speedup. copy_user_enhanced_fast_string seems to be a beast. To copy data from kernel memory to
by rahimiali 6y ago
Like others, it's unclear to me that AVX is responsible for the speedup. copy_user_enhanced_fast_string seems to be a beast. To copy data from kernel memory to userland (code link below), for every byte it copies, it checks if it's crossing a page boundary and about to cause a page fault. I don't see how this whole function could get compiled down to just a REP MOVSB.
[0] https://elixir.bootlin.com/linux/v4.2/source/arch/x86/lib/usercopy_64.c#L72 https://elixir.bootlin.com/linux/v4.2/source/arch/x86/lib/us...