> On 04 Aug 2016, at 18:14, Junio C Hamano <gitster@xxxxxxxxx> wrote: > > Jeff King <peff@xxxxxxxx> writes: > >> The cost of write() may vary on other platforms, but the cost of memcpy >> generally shouldn't. So I'm inclined to say that it is not really worth >> micro-optimizing the interface. >> >> I think the other issue is that format_packet() only lets you send >> string data via "%s", so it cannot be used for arbitrary data that may >> contain NULs. So we do need _some_ other interface to let you send a raw >> data packet, and it's going to look similar to the direct_packet_write() >> thing. > > OK. That is a much better argument than "I already stuff the length > bytes in my buffer" (which will invite "How about stop doing that?") > to justify a new "I have N bytes of data, send it out", whose > signature would look more like write(2) and deserve to be called > packet_write() but unfortunately the name is taken by what should > have called packet_fmt() or something, but that squats on a good > name packet_write(). Sigh. Well, my argument wasn't meant to be offensive. It was just an idea that I published the to get feedback. Now I understand that it wasn't a particular good idea (thanks Peff for the performance test!). However, besides the bogus performance argument I introduced that function to allow packet writs to fail using the `gentle` parameter: http://public-inbox.org/git/D116610C-F33A-43DA-A49D-0B33958822E5%40gmail.com/ Would you be OK if I introduce packet_write_gently() that returns `0` if the write was OK and `-1` if it failed? Thanks, Lars -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html