On Wed, Mar 30, 2022 at 10:18 AM Junio C Hamano <gitster@xxxxxxxxx> wrote: > > "Neeraj Singh via GitGitGadget" <gitgitgadget@xxxxxxxxx> writes: > > > From: Neeraj Singh <neerajsi@xxxxxxxxxxxxx> > > > > If we die while trying to fsync a loose object file, pass the actual > > filename we're trying to sync. This is likely to be more helpful for a > > user trying to diagnose the cause of the failure than the former > > 'loose object file' string. It also sidesteps any concerns about > > translating the die message differently for loose objects versus > > something else that has a real path. > > > > Signed-off-by: Neeraj Singh <neerajsi@xxxxxxxxxxxxx> > > --- > > object-file.c | 8 ++++---- > > 1 file changed, 4 insertions(+), 4 deletions(-) > > Looks good and obviously can be done totally outside the series. > Perhaps while the rest of the topic is still cooking, extract this > (we may find others) and have them graduate sooner? > > > diff --git a/object-file.c b/object-file.c > > index b254bc50d70..5ffbf3d4fd4 100644 > > --- a/object-file.c > > +++ b/object-file.c > > @@ -1888,16 +1888,16 @@ void hash_object_file(const struct git_hash_algo *algo, const void *buf, > > } > > > > /* Finalize a file on disk, and close it. */ > > -static void close_loose_object(int fd) > > +static void close_loose_object(int fd, const char *filename) > > { > > if (the_repository->objects->odb->will_destroy) > > goto out; > > > > if (fsync_object_files > 0) > > - fsync_or_die(fd, "loose object file"); > > + fsync_or_die(fd, filename); > > else > > fsync_component_or_die(FSYNC_COMPONENT_LOOSE_OBJECT, fd, > > - "loose object file"); > > + filename); > > > > out: > > if (close(fd) != 0) > > @@ -2011,7 +2011,7 @@ static int write_loose_object(const struct object_id *oid, char *hdr, > > die(_("confused by unstable object source data for %s"), > > oid_to_hex(oid)); > > > > - close_loose_object(fd); > > + close_loose_object(fd, tmp_file.buf); > > > > if (mtime) { > > struct utimbuf utb; Ok. I'll create two new single-patch series with changes that are independent.