git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] copy.c: use `sendfile()` for in-kernel file copying on Linux

From
Collin Funk <collin.funk1@gmail.com>
Date
Feb 20, 2026, 16:48 UTC
Message-ID
<87o6ljtl6w.fsf@gmail.com>
In-Reply-To
<CAPyFy2Dj6z9OuYFF9Tpn98mrd3Hs6BD75B73B+jkqp9aVM8X_w@mail.gmail.com>
Ed Maste <emaste@freebsd.org> writes:
Show 6 quoted lines
> On Sat, 14 Feb 2026 at 11:50, Chris Torek <chris.torek@gmail.com> wrote:
>>
>> Ah, more importantly, FreeBSD's sendfile only operates on sockets.
>
> True. If benchmarking shows this is profitable then we'd want to use
> copy_file_range(2) on FreeBSD.

We use copy_file_range in GNU Coreutils. Note that it has quite a few issues [1], including a recent one affecting files larger than INT_MAX bytes [2][3].

Coreutils has Gnulib to work around this stuff, and the performance improvement is meaningful for 'cp'. Based on earlier messages in this thread, I am not sure if it is worth dealing with in this case.

Collin

[1] https://lwn.net/Articles/789527/ [2] https://sourceware.org/PR33245 [3] https://bugs.gnu.org/79139

Previous: Ed MasteNext: Phillip Wood
Message 6 of 9 in “copy.c: use `sendfile()` for in-kernel file copying on Linux”
  1. copy.c: use `sendfile()` for in-kernel file copying on LinuxGeorge Hu, Feb 13, 2026
  2. Chris TorekFeb 13, 2026
  3. George HuFeb 14, 2026
  4. Chris TorekFeb 14, 2026
  5. Ed MasteFeb 20, 2026
  6. Collin FunkFeb 20, 2026
  7. Phillip WoodFeb 14, 2026
  8. George HuFeb 15, 2026
  9. Jeff KingFeb 15, 2026

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.