Thread (6 messages) flat view 6 messages, 1 author, 2016-06-15
DORMANTno replies

Revision v7 of 8 in this series.

Revisions (8)
  1. rfc [diff vs current]
  2. v2 [diff vs current]
  3. v3 [diff vs current]
  4. v4 [diff vs current]
  5. v5 [diff vs current]
  6. v6 [diff vs current]
  7. v7 current
  8. v10 [diff vs current]

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

From: Kjetil Barvik <hidden>
Date: 2016-06-15 22:45:56

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(-)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help