Re: [RFC PATCH 2/3] Make ce_compare_gitlink thread-safe
- From
- Atneya Nair <atneya@google.com>
- Date
- Mar 12, 2024, 22:15 UTC
- Message-ID
- <CA+D9mTHD6iwXuSdgAg1JZHYu1s0G6y8Kgv07V_JUkKU2Kcm_vA@mail.gmail.com>
- In-Reply-To
- <xmqqwmqg38u2.fsf@gitster.g>
On Tue, Mar 5, 2024 at 9:08 AM Junio C Hamano <gitster@pobox.com> wrote:
Show 18 quoted lines
> > Atneya Nair <atneya@google.com> writes: > > > To enable parallel update of the read cache for submodules, > > ce_compare_gitlink must be thread safe (for different objects). > > > > Remove string interning in do_config_from (called from > > repo_submodule_init) and add locking around accessing the ref_store_map. > > This step does two independent things, even though they may have > dependencies, i.e., for one to be a solution for the problem it is > tackling, the other may have to be there already. E.g., even after > calls to ce_compare_gitlink() get serialized via a mutex, it may for > some reason not work without giving each kvi.filename its own copy > [*], and if that is the case, you may need to have the "stop > interning" step in a single patch with its own justification, and > then "have mutex around ref_store calls" patch has to come after it. >
What is the appropriate way to split an intermediate patch into two? Simply adding the additional commit as 3 of 4 would cause a mismatch between patch-set versions? Would that cause any issues?