You can implement stuff using eBPF and do IO and compute in without leaving the kernel. It’s crazy.
For instance you can perform an on-disk b-tree lookup in the kernel.
These devices are so fast that crossing the kernel boundary becomes the limiting factor.