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

Re: Re* 2.54.0-rc1 NO_WRITEV=Nope does not work

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 9, 2026, 22:31 UTC
Message-ID
<xmqqik9zrcj1.fsf@gitster.g>
In-Reply-To
<20260409222131.GA3130242@coredump.intra.peff.net>
Jeff King <peff@peff.net> writes:
Show 29 quoted lines
> On Thu, Apr 09, 2026 at 02:53:28PM -0700, Junio C Hamano wrote:
>
>> > Yuck. I think for 2.54 we either have to truly implement MAX_IO_SIZE
>> > support, or we have to revert the use of writev() in send_sideband()
>> > until we do.
>> 
>> Sigh again.
>
> Yeah, I feel the same way. :(
>
> I would be happy if somebody could prove me wrong, though.
>
>> $ git log -Swritev --oneline 8023abc632^..
>> 89152af176 cmake: use writev(3p) wrapper as needed
>> 26986f4cba sideband: use writev(3p) to send pktlines
>> 1970fcef93 wrapper: introduce writev(3p) wrappers
>> 3b9b2c2a29 compat/posix: introduce writev(3p) wrapper
>> 
>> Reverting them gave us the following patch relative to the tip of
>> 'master'.
>
> If we are planning to improve the topic post-release (and I think that
> is a good idea), then we can do a much smaller revert. If we just revert
> 26986f4cba (sideband: use writev(3p) to send pktlines, 2026-03-13), then
> nobody calls writev (neither the real one nor our fallback). The
> wrappers are dead code until we bring it back, but it may make things
> easier for fixing post-2.54.
>
> -Peff

Yes and no. While excising know callers is certainly safer in the code space, I do not want to hear about some compilers complaining about dead code, etc.

I am preparing another set of integration to be pushed out, queueing the reverts in 'seen'.

Previous: Jeff KingNext: Patrick Steinhardt
Message 5 of 6 in “2.54.0-rc1 NO_WRITEV=Nope does not work”
  1. rsbecker@nexbridge.comApr 9, 2026
  2. Jeff KingApr 9, 2026
  3. Re* 2.54.0-rc1 NO_WRITEV=Nope does not workJunio C Hamano, Apr 9, 2026
  4. Jeff KingApr 9, 2026
  5. Junio C HamanoApr 9, 2026
  6. Patrick SteinhardtApr 10, 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.