We use UFS for content. The ZFS caching layer (ARC) does not integrate with the kernel's page cache, and so sendfile() requires a copy to send data residing on ZFS. I believe that ZFS also does not implement the async methods required for the async portion of sendfile.