On Tue, Mar 5, 2024 at 9:08 AM Junio C Hamano <gitster@xxxxxxxxx> wrote: > > Atneya Nair <atneya@xxxxxxxxxx> 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?