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

Re: [Patch v1 2/3] t5318: replace use of /dev/zero with generate_zero_bytes

From
Junio C Hamano <gitster@pobox.com>
Date
Feb 12, 2019, 17:18 UTC
Message-ID
<xmqqh8d9diy8.fsf@gitster-ct.c.googlers.com>
In-Reply-To
<CAPig+cTMoYMmnHVuay_4RGr_FN-HWC1tN4TPDsNM4vKCH3GzXw@mail.gmail.com>
Eric Sunshine <sunshine@sunshineco.com> writes:
Show 8 quoted lines
> On Sat, Feb 9, 2019 at 2:00 PM <randall.s.becker@rogers.com> wrote:
>> This change removes the dependency on /dev/zero with generate_zero_bytes
>> appending NUL values to blocks generating wrong signatures for test cases.
>
> This commit message says what the patch does but not _why_. At
> minimum, it should explain that /dev/zero is not available on all
> platforms, therefore, not portable, and (perhaps) cite NonStop as an
> example.

Does sombody want to do the honors? [PATCH 1/3] would become wasted effort until that happens. On the other hand, if this is not urgent (it is only urgent for those without /dev/zero, and to others it may be distraction/disruption this close to the final release to add increased risk of fat finger mistakes), obviously I can wait.

Show 6 quoted lines
>> Signed-off-by: Randall S. Becker <rsbecker@nexbridge.com>
>> ---
>> diff --git a/t/t5318-commit-graph.sh b/t/t5318-commit-graph.sh
>> @@ -383,7 +383,7 @@ corrupt_graph_and_verify() {
>> -       dd if=/dev/zero of="$objdir/info/commit-graph" bs=1 seek="$zero_pos" count=$(($orig_size - $zero_pos)) &&
>> +       generate_zero_bytes $(($orig_size - $zero_pos)) >> "$objdir/info/commit-graph" &&

The original says "skip to the $zero_pos location in an existing info/commit-graph file, and overwrite its existing contents up to the $orig_size location with NULs".

If I recall the implementation of generate_zero_bytes in [PATCH 1/3] correctly, it just generated stream of NULs of given number of bytes.

The only reason why this rewrite is not wrong is because the previous line (omitted in your quote) truncates the file to $zero_pos. That is a bit tricky ;-).

Previous: Eric SunshineNext: Junio C Hamano
Message 20 of 24 in “2.21.0-rc0 test fixes resulting from use of /dev/zero”
  1. 0/3 2.21.0-rc0 test fixes resulting from use of /dev/zerorandall.s.becker@rogers.com, Feb 9, 2019
  2. 1/3 test-lib-functions.sh: add generate_zero_bytes functionrandall.s.becker@rogers.com, Feb 9, 2019
  3. Eric SunshineFeb 10, 2019
  4. Randall S. BeckerFeb 10, 2019
  5. Jeff KingFeb 12, 2019
  6. Eric SunshineFeb 12, 2019
  7. randall.s.becker@rogers.comFeb 12, 2019
  8. 3/3 t5562: replace /dev/zero with a pipe from generate_zero_bytesrandall.s.becker@rogers.com, Feb 9, 2019
  9. Eric SunshineFeb 10, 2019
  10. Junio C HamanoFeb 12, 2019
  11. Johannes SixtFeb 12, 2019
  12. Junio C HamanoFeb 13, 2019
  13. t5562: do not depend on /dev/zeroMax Kirillov, Feb 15, 2019
  14. Randall S. BeckerFeb 15, 2019
  15. Junio C HamanoFeb 15, 2019
  16. Randall S. BeckerFeb 15, 2019
  17. Junio C HamanoFeb 15, 2019
  18. 2/3 t5318: replace use of /dev/zero with generate_zero_bytesrandall.s.becker@rogers.com, Feb 9, 2019
  19. Eric SunshineFeb 10, 2019
  20. Junio C HamanoFeb 12, 2019
  21. Junio C HamanoFeb 13, 2019
  22. Randall S. BeckerFeb 13, 2019
  23. Junio C HamanoFeb 13, 2019
  24. Randall S. BeckerFeb 13, 2019

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.