Re: [PATCH v5 03/14] object-file: pass filename to fsync_or_die

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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.



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux