On Mon, Nov 4, 2024, 6:54 PM Larry McVoy <
lm@mcvoy.com> wrote:
On Mon, Nov 04, 2024 at 06:35:30PM -0700, Warner Losh wrote:
> On Mon, Nov 4, 2024 at 6:09???PM Larry McVoy <lm@mcvoy.com> wrote:
>
> > The thing I never got a reasonable answer to was I found code in BSD that
> > was identical to code going back to at least V7. Find bmap() in the UFS
> > code and then find the same in V7. I might be wrong about V7, might be
> > 32V, might be V6. I don't think it matters, it's the same in all of them.
>
>
> bmap() is the code that maps a logical block to a phsyical block,
> > I'm quite familiar with it because I rewrote it to bmap_write() and
> > bmap_read() as part of making UFS do extents:
> >
> > http://mcvoy.com/lm/papers/SunOS.ufs_clustering.pdf
> >
> > When all the lawsuits were going on, since I knew that code really well,
> > I went off and looked and the BSD code at that time had bit for bit
> > identical bmap() implementations.
> >
> > I never understood why BSD could claim they rewrote everything when they
> > clearly had not rewritten that.
> >
> > I've raised this question before and I just went and looked, bmap() has
> > changed. I'm pretty sure I have Kirk's BSD source releases, if I do,
> > I'm 100% sure I can back up what I'm saying. Not sure I care enough to
> > do so, it's all water under the bridge at this point.
> >
>
> The short answer is that ffs_bmap.c was one of the 70 files that had
> a AT&T copyright notice added to it as part of the AT&T vs Regents suit.
> By the time 4.4BSD had been released, the file had been substantially
> rewritten, but some traces of original AT&T code remained.
Yeah, this is completely a false claim. It was identical. At least
in 4.3 BSD, I can imagine that 4.4 changed it because I was pointing
this out around then.
4.3bsd wasn't claimed to be a rewrite. 4.4bsd definitely was very different. I checked before I posted. So what i said is not false. I literally had the code up side by side 20 minutes ago. It is definitely different though clearly related and derived a bit. That function is absolutely not 100% copied.
For the record, I'm a BSD guy, my OS was SunOS 4.x, it was a bug fixed
BSD. If there ever was a guy that wanted this to be true, it's me.
It's not true, BSD ripped off Bell Labs code, that's a fact.
Except not in 4.4. 4.3 never was claimed to be a rewrite. You needed a AT&T license, prior to the ancient Unix license to get that. So there was no claim to originality prior to 4.4. I didn't look at net/2 though.
I'll check after dinner for 4.3bsd and 4.2bsd, but since FFS/UFS is on disk different than v7fs I don't expect it to be identical.
Warner