From: "Nipunn Koorapati via GitGitGadget" <gitgitgadget@gmail.com>
To: git@vger.kernel.org
Cc: Eric Sunshine <sunshine@sunshineco.com>,
Nipunn Koorapati <nipunn1313@gmail.com>
Subject: [PATCH v2 0/3] teach git to respect fsmonitor in diff-index
Date: Wed, 17 Mar 2021 21:22:20 +0000 [thread overview]
Message-ID: <pull.903.v2.git.1616016143.gitgitgadget@gmail.com> (raw)
In-Reply-To: <pull.903.git.1615760258.gitgitgadget@gmail.com>
Skip lstat deletion check during git diff-index (similar to how it already
does so in git diff-files). Add perf benchmark for this case. Add assert for
guaranteeing that fsmonitor is refreshed in this case.
Update since Patch Series V1:
* Fix spaces->tabs issue in fsmonitor.h
* Remove comment in test-chmtime.c - to avoid it going stale
cc: Eric Sunshine sunshine@sunshineco.com
Nipunn Koorapati (3):
fsmonitor: skip lstat deletion check during git diff-index
fsmonitor: add assertion that fsmonitor is valid to check_removed
fsmonitor: add perf test for git diff HEAD
diff-lib.c | 23 +++++++++++++++--------
fsmonitor.h | 11 +++++++++++
t/helper/test-chmtime.c | 4 ++--
t/perf/p7519-fsmonitor.sh | 4 ++++
4 files changed, 32 insertions(+), 10 deletions(-)
base-commit: 13d7ab6b5d7929825b626f050b62a11241ea4945
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-903%2Fnipunn1313%2Fnk%2Ffsmonitor-in-diff-index-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-903/nipunn1313/nk/fsmonitor-in-diff-index-v2
Pull-Request: https://github.com/gitgitgadget/git/pull/903
Range-diff vs v1:
1: 75a3c46c4055 = 1: 75a3c46c4055 fsmonitor: skip lstat deletion check during git diff-index
2: dda5b537a3f0 ! 2: afd326c5011b fsmonitor: add assertion that fsmonitor is valid to check_removed
@@ fsmonitor.h: void refresh_fsmonitor(struct index_state *istate);
+ */
+static inline int is_fsmonitor_refreshed(const struct index_state *istate)
+{
-+ return !core_fsmonitor || istate->fsmonitor_has_run_once;
++ return !core_fsmonitor || istate->fsmonitor_has_run_once;
+}
+
/*
3: 740302586dd8 ! 3: f9d0fd594fdb fsmonitor: add perf test for git diff HEAD
@@ Commit message
## t/helper/test-chmtime.c ##
@@ t/helper/test-chmtime.c: int cmd__chmtime(int argc, const char **argv)
+ uintmax_t mtime;
+
if (stat(argv[i], &sb) < 0) {
- fprintf(stderr, "Failed to stat %s: %s\n",
+- fprintf(stderr, "Failed to stat %s: %s\n",
++ fprintf(stderr, "Failed to stat %s: %s. Skipping\n",
argv[i], strerror(errno));
- return 1;
-+ // Skip and move on - eg if it's a broken symlink
+ continue;
}
--
gitgitgadget
next prev parent reply other threads:[~2021-03-17 21:23 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-14 22:17 [PATCH 0/3] teach git to respect fsmonitor in diff-index Nipunn Koorapati via GitGitGadget
2021-03-14 22:17 ` [PATCH 1/3] fsmonitor: skip lstat deletion check during git diff-index Nipunn Koorapati via GitGitGadget
2021-03-14 22:17 ` [PATCH 2/3] fsmonitor: add assertion that fsmonitor is valid to check_removed Nipunn Koorapati via GitGitGadget
2021-03-14 22:35 ` Eric Sunshine
2021-03-15 22:01 ` Nipunn Koorapati
2021-03-15 22:51 ` Eric Sunshine
2021-03-14 22:17 ` [PATCH 3/3] fsmonitor: add perf test for git diff HEAD Nipunn Koorapati via GitGitGadget
2021-03-17 21:22 ` Nipunn Koorapati via GitGitGadget [this message]
2021-03-17 21:22 ` [PATCH v2 1/3] fsmonitor: skip lstat deletion check during git diff-index Nipunn Koorapati via GitGitGadget
2021-03-18 20:44 ` Junio C Hamano
2021-03-18 21:36 ` Nipunn Koorapati
2021-03-17 21:22 ` [PATCH v2 2/3] fsmonitor: add assertion that fsmonitor is valid to check_removed Nipunn Koorapati via GitGitGadget
2021-03-18 20:47 ` Junio C Hamano
2021-03-18 22:57 ` Nipunn Koorapati
2021-03-17 21:22 ` [PATCH v2 3/3] fsmonitor: add perf test for git diff HEAD Nipunn Koorapati via GitGitGadget
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=pull.903.v2.git.1616016143.gitgitgadget@gmail.com \
--to=gitgitgadget@gmail.com \
--cc=git@vger.kernel.org \
--cc=nipunn1313@gmail.com \
--cc=sunshine@sunshineco.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.