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

[PATCH/RFC v7 0/5] git checkout: optimise away lots of lstat() calls

From
KBKjetil Barvik <barvik@broadpark.no>
Date
Jan 13, 2009, 12:29 UTC
Message-ID
<1231849748-8244-1-git-send-email-barvik@broadpark.no>
Changes since version 6:
a) The patch-split was not correct for patch 3/3.  In v6 it could look
   like the lines:

- char path[PATH_MAX]; + char path[PATH_MAX + 1];

   was a random bugfix.  In this version for patch 3/5 we also change
   "&& last_slash < PATH_MAX" into "&& last_slash <= PATH_MAX" (and
   similar for the else-if part).  This could also make the intro-
   duction of the 'FL_FULLPATH' flag more readable for this patch.
b) Cleanup and added 3 comments to 'greatest_match_lstat_cache()'
c) Introduction of the 'invalidate_lstat_cache()' function.  How does
   the interface look?  good?  bad?  Does the function do what people
   expect it to do?
d) Reintroduction of the 'clear_lstat_cache()' function.

Junio, I hope it is possible to use patches 1/5, 2/5 and 3/5 from this version instead of 1/3, 2/3 and 3/3 from version 6, for the possible future in origin/pu? See also a) above. Thanks in advance!

In general, are we allowed to redesign the patch-series while the patches is inside origin/pu?

Kjetil Barvik (5):
  lstat_cache(): more cache effective symlink/directory detection
  lstat_cache(): introduce has_symlink_or_noent_leading_path() function
  lstat_cache(): introduce has_dirs_only_path() function
  lstat_cache(): introduce invalidate_lstat_cache() function
  lstat_cache(): introduce clear_lstat_cache() function
 cache.h        |    4 +
 entry.c        |   34 +++-----
 symlinks.c     |  249 ++++++++++++++++++++++++++++++++++++++++++++++----------
 unpack-trees.c |    4 +-
 4 files changed, 222 insertions(+), 69 deletions(-)
Next: Kjetil Barvik
Message 1 of 7 in “git checkout: optimise away lots of lstat() calls”
  1. 0/5 git checkout: optimise away lots of lstat() callsKjetil Barvik, Jan 13, 2009
  2. 1/5 lstat_cache(): more cache effective symlink/directory detectionKjetil Barvik, Jan 13, 2009
  3. 2/5 lstat_cache(): introduce has_symlink_or_noent_leading_path() functionKjetil Barvik, Jan 13, 2009
  4. 3/5 lstat_cache(): introduce has_dirs_only_path() functionKjetil Barvik, Jan 13, 2009
  5. 4/5 lstat_cache(): introduce invalidate_lstat_cache() functionKjetil Barvik, Jan 13, 2009
  6. 5/5 lstat_cache(): introduce clear_lstat_cache() functionKjetil Barvik, Jan 13, 2009
  7. Junio C HamanoJan 13, 2009

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.