Date: Thu, 7 Oct 2021 09:32:17 -0600 From: Alan Somers <asomers@freebsd.org> To: Mariusz Zaborski <oshogbo@freebsd.org> Cc: src-committers <src-committers@freebsd.org>, "<dev-commits-src-all@freebsd.org>" <dev-commits-src-all@freebsd.org>, dev-commits-src-main@freebsd.org Subject: Re: git: 824bbb9a4082 - main - diff: consider two files with same inodes as identical Message-ID: <CAOtMX2gfBsuXSCCfN-8EQHR%2ByCVOu8qJ7_3BxLxe=dDqY_9uEw@mail.gmail.com> In-Reply-To: <202110071509.197F9kqv094488@gitrepo.freebsd.org> References: <202110071509.197F9kqv094488@gitrepo.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Oct 7, 2021 at 9:09 AM Mariusz Zaborski <oshogbo@freebsd.org> wrote: > > The branch main has been updated by oshogbo: > > URL: https://cgit.FreeBSD.org/src/commit/?id=824bbb9a40820fb62bde0a91c0f13e0b894da149 > > commit 824bbb9a40820fb62bde0a91c0f13e0b894da149 > Author: Mariusz Zaborski <oshogbo@FreeBSD.org> > AuthorDate: 2021-10-07 15:07:00 +0000 > Commit: Mariusz Zaborski <oshogbo@FreeBSD.org> > CommitDate: 2021-10-07 15:07:00 +0000 > > diff: consider two files with same inodes as identical > > Obtained from: OpenBSD > MFC after: 1 week > --- > usr.bin/diff/diffreg.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/usr.bin/diff/diffreg.c b/usr.bin/diff/diffreg.c > index fc3c3406a073..995843f9e539 100644 > --- a/usr.bin/diff/diffreg.c > +++ b/usr.bin/diff/diffreg.c > @@ -440,6 +440,10 @@ files_differ(FILE *f1, FILE *f2, int flags) > if ((flags & (D_EMPTY1|D_EMPTY2)) || stb1.st_size != stb2.st_size || > (stb1.st_mode & S_IFMT) != (stb2.st_mode & S_IFMT)) > return (1); > + > + if (stb1.st_dev == stb2.st_dev && stb1.st_ino == stb2.st_ino) > + return (0); > + Checking st_dev is not correct. It does necessarily bear any relation to the specific mounted file system. It might, but that's up to the file system driver. fusefs, for example, allows the server to populate that field with whatever it damn well pleases. diff should use statfs instead, and check the f_fsid field. That would probably work. -Alan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAOtMX2gfBsuXSCCfN-8EQHR%2ByCVOu8qJ7_3BxLxe=dDqY_9uEw>