Use unmapped I/O for the data transfers for passthrough ioctls. Nothing
looks into them, so there's no need to map and unmap VAs we'll never
dereference through.
Sponsored by: Netflix
Differential D52112
nvme: Switch to using unmapped pages for passthrough data transfer Authored by imp on Aug 22 2025, 1:15 AM. Tags None Referenced Files
Subscribers
Details
Diff Detail
Event Timeline
Comment Actions I must say, I would perhaps find it simpler to avoid vmapbuf() and just use vm_fault_quick_hold_pages() if you didn't care about the sysctl. I suspect no one will ever care about the sysctl or toggle it? Comment Actions This is fine for now (especially given the code slush). I might try to come up with a thin wrapper around vm_fault_quick_hold_pages that can be used here (and in a few other places) and replace the usage of vmapbuf. It's interesting that prior to this change, all callers vmapbuf pass 1 (mapped bufs) to vmapbuf. It might be nice to simplify that API again to remove the unmapped case.
Comment Actions So I'll update this to always do it and remove the sysctl. | |||||||||||||||||||||||||||||||||||||||||||||||||||||