HomeFreeBSD

Use soref() in sendfile(2) instead fhold() to reference a socket.

Description

Use soref() in sendfile(2) instead fhold() to reference a socket.

The problem is that fdrop() requires syscall context, as it may
enter sleep in some cases. The reason to use it in the original
non-blocking sendfile implementation, was to avoid use of global
ACCEPT_LOCK() on every I/O completion. Now in head sorele() no
longer requires this lock.

Details

Provenance
glebiusAuthored on
Parents
rS323565: MFC: r323382, MFV: r323381
Branches
Unknown
Tags
Unknown