decoration decoration
Stories

GROKLAW
When you want to know more...
decoration
For layout only
Home
Archives
Site Map
Search
About Groklaw
Awards
Legal Research
Timelines
ApplevSamsung
ApplevSamsung p.2
ArchiveExplorer
Autozone
Bilski
Cases
Cast: Lawyers
Comes v. MS
Contracts/Documents
Courts
DRM
Gordon v MS
GPL
Grokdoc
HTML How To
IPI v RH
IV v. Google
Legal Docs
Lodsys
MS Litigations
MSvB&N
News Picks
Novell v. MS
Novell-MS Deal
ODF/OOXML
OOXML Appeals
OraclevGoogle
Patents
ProjectMonterey
Psystar
Quote Database
Red Hat v SCO
Salus Book
SCEA v Hotz
SCO Appeals
SCO Bankruptcy
SCO Financials
SCO Overview
SCO v IBM
SCO v Novell
SCO:Soup2Nuts
SCOsource
Sean Daly
Software Patents
Switch to Linux
Transcripts
Unix Books

Gear

Groklaw Gear

Click here to send an email to the editor of this weblog.


You won't find me on Facebook


Donate

Donate Paypal


No Legal Advice

The information on Groklaw is not intended to constitute legal advice. While Mark is a lawyer and he has asked other lawyers and law students to contribute articles, all of these articles are offered to help educate, not to provide specific legal advice. They are not your lawyers.

Here's Groklaw's comments policy.


What's New

STORIES
No new stories

COMMENTS last 48 hrs
No new comments


Sponsors

Hosting:
hosted by ibiblio

On servers donated to ibiblio by AMD.

Webmaster
Exhibit 28-B- SCO's List of "AIX Files & Lines in Code Drop for Linux 2.2.12"
Wednesday, June 02 2004 @ 09:47 PM EDT

Here is Exhibit 28B, SCO's list of "AIX Files & lines in code drop for Linux 2.2.12", attached to the Declaration of Todd M. Shaughnessy.

In SCO's Second Amended Complaint, paragraphs 99 and 100, they accuse IBM as follows:

"99. . . .IBM contributed key technology to Linux for enterprise use. Among the numerous contributions are the AIX Journaling File Systems, the AIX Enterprise Volume Management System, and the Dynix/ptx Read Copy Update technology.

"100. The contribution of the Journaling File System ('JFS') was done in a series of 'drops' of AIX code identified as 'reference files' inside Linux. The first such drop occurred on or about February 2000, with multiple additions and significant follow-up work by IBM since that time to adapt AIX/JFS for enterprise use inside Linux. These drops of reference files do not necessarily become part of the source code in the Linux kernel, but rather are public displays of the Protected Materials so that anyone has access to them and can use them to construct similar file in Linux. The first drop contains (a) a partially functioning port, or transfer, of JFS from AIX to Linux; (b) a set of reference directories (named ref/) which contain the AIX reference version of AIX/JFS; (c) AIX/JFS-related utility files used to maintain and upkeep AIX/JFS; and (d) a set of directories (named directory ref_utils/) which contain the AIX reference version of utilities. Copies of AIX/JFS files into Linux are shown in Table A, below. Table A compares a 1999 version of AIX and shows the following similarities, demonstrating copying of code, structures and/or sequences."

The problem with SCO's position is quite simply this: IBM's JFS didn't come from AIX, from what I see in the historical record. It came from OS/2, and then was ported separately to Linux and to AIX.



In that connection, you might find this interview from 2001 with IBM's Steve Best about JFS of interest. He clearly states that the JFS they donated to Linux came not from AIX but from OS/2. AIX got it from OS/2 as well:

"1. What is the current status of JFS for Linux? Is it 100% ready for a production level environment?

"Steve Best: Yes, We did our 1.0.0 release which was production level ready on 6/28/01.

"2. What are its biggest differences (good or bad) when compared to ReiserFS and XFS?

"Steve Best: Feature wise Juan I. Santos Florido, did a very good article comparing the journaling file system being developed for Linux. The article is called 'Journal File Systems' was published by the Linux Gazette on 7/2000.

"Juan used some of the information for his article about JFS by viewing a white paper that Dave Kleikamp and I have wrote describing the layout structures that JFS uses.

"3. What are the differences between the Linux version of JFS and the one found on OS/2?

"Steve Best: The JFS for Linux is a port from OS/2 and has an OS/2 compatibility option. The OS/2 source was also used for the JFS2 just release on AIX 5L. There is a JFS1 on AIX and we didn't use this source base, since the OS/2 source base was a new 'ground-up' scalable design started in 1995. The design goals were to use the proven Journaling File System technology that we had developed for 10+ years in AIX and expand on that in the following areas: Performance, Robustness, and SMP support. Some of the team members for the original JFS designed/developed this File System. So this source base for JFS for Linux is now on the following other Operating Systems: OS/2 Warp Server for e-business 4/99; OS/2 Warp Client (fixpack 10/00); AIX 5L called JFS2 4/01

"8. Which part of JFS you would like to change, update, extend or even re-design? What are the future plans for JFS?

"Steve Best: The design for JFS is proven now on several different operating systems and I currently see no major change in this design. We still have performance tuning to do for JFS for Linux and this will be one of our major areas that we will work on in the coming months.

"One good part of working in the file system area of Linux right now is that there are 4 journaling file systems being actively developed and all are GPL, so it is possible that each file system can improve by sharing the best design points.

"The JFS team has worked together for several years and started the port of JFS to Linux in December of 1999. We took the approach of release early and often. Our first release was done on 2/2/2000 and we have done 41 releases so far. In general we do a new release about every 2 weeks and if possible provide patches to problems as they are fixed. We still have new features to add to JFS and will continually enhance this file system.

"Some of the goals of the JFS team are to have JFS run on all architectures that Linux supports. With the help of the Linux community JFS has run on (ia32, ia64, PowerPC 32 and 64, Alpha, s/390 31 and 64 bit, ARM). The community members are helping us debug some problems that JFS has on SPARC and PA-RISC, so we should have this architectures running shortly. JFS has no architecture specific code included in it.

"Another goal is have JFS included in the kernel.org source tree. When we started the port the team decided that we weren't going to change any of the kernel and this would allow JFS to be easily integrated into the kernel." [Emphasis added.]

This directly contradicts SCO's narrative about its efforts to do discovery in the recent Memorandum Regarding Discovery, in which they claimed that JFS1 from AIX was used:

". . . SCO has spent countless hours, and sometimes fruitless effort, trying to track the improper use of UNIX System V code in Linux through AIX and Dynix.

"In the absence of the code, programs and other materials requested, the following tasks and efforts have been undertaken by SCO: Identification and tracing of certain UNIX System V file system code, including structures, sequences, and interfaces in UNIX System V code, that became modified or derivative file system (JFS1) code in AIX; identification and tracing of the same file system code (JFS1) in AIX to modified, derivative file system (JFS2) code also in AIX; and identification and tracing of the same file system code (JFS2) to modified, derivative file system code in Linux, to the extent possible based on the limited production made available by IBM."

Countless hours spent on a fruitless search is an accurate statement. My question is this: If I can find the information about JFS' lineage, why can't SCO? Oh, don't tell me. I know. They need IBM to find it for them.

SCO has made a lot of noise about how impossible it would have been for Linux to scale without IBM, but IBM back then, not in connection with any lawsuit, said it was the other way around. They donated some code, but the community made it grow and improve. You can read IBM's JFS page or go to Steve Best's JFS page for more details.

This 2000 article reinforces and confirms those facts:

"IBM is donating its Journaled File System (JFS) technology to the Linux open source community with the goal of completing a port to Linux. The JFS technology, which is currently used in the IBM OS/2 Warp Server, is now an open source project on developerWorks. The code is available under the GPL license.

"IBM has started the port to Linux and is making the source code available so the community can participate in the effort. Key functions such as format, file system mount/unmount, and directory list are operational on Linux today.

"'We've ported the code to the point where it is a buildable work environment for the community,' said Mark Peloquin, file systems specialist in the IBM Linux Technology Center. The code is not fully operational on Linux; rather it is at what the team considers the minimum level to enable the community to build the code, evaluate it, and grow the effort.

"'We'll continue to drop code as we develop it,' said Steve Best, team leader for the project at IBM. 'Getting the community involved is the best way to get feedback on what we're doing.'

"The origins of the IBM technology

"The JFS open source code on developerWorks originates from that currently shipping with the OS/2 Warp Server for e-business. As a fairly mature IBM technology, JFS provides the high-performance capability needed for fast system restart and file system restore.

"The JFS technology used in OS/2 today can be restarted quickly, is transaction oriented, and highly scalable. It is tailored primarily for the high throughput and reliability requirements of servers, from single processor systems to advanced multi-processor and clustered systems, but can also be used in client configurations where performance and reliability needs are high.

"JFS was designed to have journaling fully integrated from the start, rather than adding it to an existing file system. When introduced in OS/2 in 1999, JFS expanded file system capacity limits, improved the recoverability of the system in case of server failure, supported larger partitions as well as dynamic expansion, and allowed more flexibility in data storage and management.

"The technology has been well-received in the OS/2 world, and IBM hopes to transfer the knowledge and techniques as a contribution to the Linux community.

"Bringing journaling file systems to Linux

"Several efforts are underway to bring journaling file system technology to Linux. One effort led by Stephen Tweedie, a leading Linux kernel developer, puts journaling into ext2. Called ext3, it is available in alpha form. Namesys has a journaling file system under development called ReiserFS. SGI has announced its intention to port its XFS file system to Linux."

Notice all the other journaling file systems being worked on independently from IBM? So is it true that without IBM's donated code, Linux would never have been able to have a journaling file system? The bottom line is that JFS didn't come to Linux from AIX, according to the historical record. If there are files that resemble each other, a simple explanation is it's because they came from the same source.

**********************************************************

Exhibit B

AIX Files & lines in code drop for Linux 2.2.12

fs/jfs/ref/jfs_bufmgr.c 289-311, 364-441, 557-649, 682-917, 1270-1468, 1691-2016, 2102-2194
fs/jfs/ref/jfs_create.c 41-121, 127-135, 153-169, 193-223, 233-239, 241-264
fs/jfs/ref/jfs_defragfs.c 33-75, 84-89, 108-111, 119-264
fs/jfs/ref/jfs_dmap.c 43-4475
fs/jfs/ref/jfs_dnlc.c 55-89, 140-200, 212-224, 251-332, 325-338, 402-451, 485-573, 685-713
fs/jfs/ref/jfs_extendfs.c 43-153, 185-249, 293-579
fs/jfs/ref/jfs_fsync.c 32-84
fs/jfs/ref/jfs_ftruncate.c 37-129, 143, 156-170, 230-341
fs/jfs/ref/jfs_getattr.c 33-124
fs/jfs/ref/jfs_bold.c 33-63
fs/jfs/ref/jfs_imap.c 27-665, 680-2855, 2876-2893, 2904-2990
fs/jfs/ref/jfs_inodc.c 312-350, 390-463, 483-510, and more
fs/jfs/ref/jfs_link.c 33-152
fs/jfs/ref/jfs_logmgr.c 27-67, 113-132, 165-781, 1052-1607, 1623-3211
fs/jfs/ref/jfs_lookup.c 37-179
fs/jfs/ref/jfs_mkdir.c 37-111, 130-213, 222-264, 322-345
fs/jfs/ref/jfs_mount.c 31-188, 198-215, 229-380, 454-605, 363-785
fs/jfs/ref/jfs_open.c 37-98, 117-126, 218-277, 292-312
fs/jfs/ref/jfs_readdir.c 38-113, and more
fs/jfs/ref/jfs_readlink.c 26-110
fs/jfs/ref/jfs_relc.c 31-64
fs/jfs/ref/jfs_remove.c 36-145, 157-464
fs/jfs/ref/jfs_rename.c 36-222, 246-313, 390-526, 577-651, 760-791
fs/jfs/ref/jfs_rmdir.c 36-125, 137-156, 188-193
fs/jfs/ref/jfs_statfs.c 23-139
fs/jfs/ref/jfs_symlink.c 23-204
fs/jfs/ref/jfs_txnmgr.c 26-89, 122-132, 155-351, 380-414, 463-482, 531-661, 677-682, 710-767, 806-1153, 1162-1182, 1194-1246, 1293-1298, 1318-1539, 1577-1761, 1796-1856, 1883-1910, 1922-2097, 2115-2151, 2219-2321, 2350-2674, 2722-2845, 2983-3003
fs/jfs/ref/jfs_umount.c 45-182, 198-307, 318-322
fs/jfs/ref/jfs_util.c 49-120, 133-163, 175-230, 300-425
include/linux/jfs/ref/jfs_btree.h 19-113, 115-143
include/linux/jfs/ref/jfs_bufmgr.h 30-33, 37-49, 123-141, 274-279
include/linux/jfs/ref/jfs_cachemgr.h 71-108, 371-388
include/linux/jfs/ref/jfs_chkdsk.h  
include/linux/jfs/ref/jfs_chbblks.h 24-48, 52-60
include/linux/jfs/ref/jfs_debug.h 28-30, 81-93, 96-106, 117-134, 137-142, 146-168
include/linux/jfs/ref/jfs_defragfs.h 20-56
include/linux/jfs/ref/jfs_dinode.h 35-49, 53-200
include/linux/jfs/ref/jfs_dmap.h

22-272, 276-324

include/linux/jfs/ref/jfs_dtree.h 25-79, 88-210, 233-287, 312-323
include/linux/jfs/ref/jfs_extendsfs.h 19-29, 32-39
include/linux/jfs/ref/jfs_filsys.h 76-103, 167-172, 230-256, 266-277, 279-321
include/linux/jfs/ref/jfs_imap.h 19-168
include/linux/jfs/ref/jfs_inode.h 192-233, 343-425
include/linux/jfs/ref/jfs_io.h  
include/linux/jfs/ref/jfs_lock.h 72-119, 338-391, 395-406
include/linux/jfs/ref/jfs_logmgr.h 34-506, 540-577
include/linux/jfs/ref/jfs_os2.h  
include/linux/jfs/ref/jfs_proto.h 58-62, 117-128
include/linux/jfs/ref/jfs_superblock.h 19-105
include/linux/jfs/ref/jfs_txnmgr.h 25-251, 255-345
include/linux/jfs/ref/jfs_types.h 100-223, 299-582
include/linux/jfs/ref/jfs_util.h 38-62
include/linux/jfs/ref/jfs_xtree.h 24-131, 139-212

 


  


Exhibit 28-B- SCO's List of "AIX Files & Lines in Code Drop for Linux 2.2.12" | 86 comments | Create New Account
Comments belong to whoever posts them. Please notify us of inappropriate comments.
Exhibit 28-B- SCO's List of "AIX Files & Lines in Code Drop for Linux 2.2.12"
Authored by: Trepalium on Thursday, June 03 2004 @ 12:46 AM EDT
It's not 2.2 that SCO has a problem with in this case, it's IBM JFS for 2.2.12.

---
$ apt-get moo

[ Reply to This | # ]

JFS: Ported from OS2 to Linux *AND* AIX
Authored by: Anonymous on Thursday, June 03 2004 @ 01:01 AM EDT
Its from the same sources - JFS on OS2, so of course there will be similarities
in the code when its ported acorss to similar operating systems that both
generally meet the POSIX Specifications.

IBM owns JFS, and ported it to AIX and Linux.

Theres even a file "jfsos2" in the file list!

SO SCO is claiming THIS as an infringement?

It boggles the mind the audacity to lie in such a bald faced manner on a Court
Document!

[ Reply to This | # ]

Correction, sort of
Authored by: Anonymous on Thursday, June 03 2004 @ 01:07 AM EDT
SCO did originally say Linux 2.4 and above infringe

Last year they changed their Scosource FAQ, I think around Fall (it was
referenced in Groklaw comments) and said 2.2

Within a week or two they said all versions of Linux infringe

At one point they were saying different things about which versions on different
pages of their site. They may even still be inconsistent, frankly, I've lost the
will to check again.


I have no idea how any of the above ties in with their current court position,
which seems equally nebulous, although possibly in different ways.

[ Reply to This | # ]

SCO 8-K on sec.gov/edgar
Authored by: Anonymous on Thursday, June 03 2004 @ 01:19 AM EDT
not here

[ Reply to This | # ]

JFS source
Authored by: gdt on Thursday, June 03 2004 @ 02:18 AM EDT

In case it's not clear, the files in the list are from jfs-0.0.1 at IBM's JFS web pages. Not in linux-2.2.12 at kernel.org.

[ Reply to This | # ]

Does anyone actually use JFS?
Authored by: Sander on Thursday, June 03 2004 @ 02:18 AM EDT

Apart for being compatible with an old aix or os/2 partition. Pretty much
everyone uses either ext3 or reiserfs. XFS comes in handy if you have big files
that need maximum troughoutput. But what advantages are there to using JFS?

---
C++ programming languages, we own those, have licensed them out multiple times,
obviously. We have a lot of royalties coming to us from C++. -- Darl McBride

[ Reply to This | # ]

Which way the wind SCOS
Authored by: kawabago on Thursday, June 03 2004 @ 02:54 AM EDT
SCO has no case so they have to keep changing their claims or the case would be
thrown out. A weather vane might be a good indicator of their next move!
:o)

[ Reply to This | # ]

Exhibit 28-B- SCO's List of "AIX Files & Lines in Code Drop for Linux 2.2.12"
Authored by: Anonymous on Thursday, June 03 2004 @ 03:28 AM EDT
And let's not forget who helped port JFS to Linux - that's right, Caldera
employee Chris Hellwig.

Ooops!

Alex

[ Reply to This | # ]

SCO Theory 101
Authored by: Anonymous on Thursday, June 03 2004 @ 08:19 AM EDT
It seems if anything touches a computer running SCO (If you lay a CD on the top
of the computer) it becomes SCO IP!

I feel bad for anyone programming applications for Unixware as they do not own
their code as far as SCO is concerned.

[ Reply to This | # ]

"Literally millions of lines" != 21798
Authored by: Anonymous on Thursday, June 03 2004 @ 10:36 AM EDT
I make that ~21798 lines (by summing the difference between the start/end line
quoted, and ignoring the files where they haven't identified 'with
specificity').

Seems a long way short of 'literally millions'.

[ Reply to This | # ]

MAJOR problems with this exhibit
Authored by: BubbaCode on Thursday, June 03 2004 @ 11:03 AM EDT

1) There should be SIX columns. 2 for AIX files and lines. 2 for Linux files and lines. 2 for SCO Unix files and lines. Without this they have proved nothing.

2) You can't say "and more" for lines of code

3) They include comments and white space in the lines of code. Please. I mean come on.

4) Many of the lines they list do not include actual algorithms. These lines include such code as malloc calls and clearing of variables.

5) Although it looks like a lot of code, it is actually very little.

6) Again the question must be asked. What is the value of this code? Billions? 7) If I use Linux 2.2 or 2.4 but don't use jfs, do I owe SCO money?

[ Reply to This | # ]

Exhibit 28-B- SCO's List of "AIX Files & Lines in Code Drop for Linux 2.2.12"
Authored by: markdj on Thursday, June 03 2004 @ 11:41 AM EDT
It doesn't matter that JFS came from OS/2. One of SCO's claims is that ANY code
that is added to UNIX (AIX in this case) automatically becomes SCO's IP since
they own the UNIX IP and all derivative works. That logic makes Linux infringing
since it uses the same JFS code as AIX.

---
David J. Marks

[ Reply to This | # ]

Hey Judge...
Authored by: Anonymous on Thursday, June 03 2004 @ 02:41 PM EDT
... we've been ordered to tell IBM what code is ours in Linux, we've spent
countless hours in a fruitless search for this code in Linux. We just can't
find it.

Please order IBM to just tell us what they stole and put into Linux so that we
can comply with this order.

[ Reply to This | # ]

Correction
Authored by: fotoguzzi on Friday, June 04 2004 @ 03:24 AM EDT
The original transcription has an error which is repeated in this excerpt: "100. ... use them to construct similar file in Linux." should be: "100. ... use them to construct a similar file in Linux." bkm /me wonders if the html will work; it does not work in preview mode.

[ Reply to This | # ]

Exhibit 28-B- SCO's List of "AIX Files & Lines in Code Drop for Linux 2.2.12"
Authored by: Anonymous on Friday, June 04 2004 @ 09:53 AM EDT
First I don't think is's a big issue wether JFS came from AIX or OS/2. The thing
is, a let us not be fooled by SCO, that SCO will have a hard thing here even if
JFS came from AIX. The reason is as follows:
1) Even if JFS came from AIX, JFS is copyright IBM not SCO, and no unix-code was
contributed to linux, just JFS-code.
So SCO will have to show some strong evidence that they own IBMs code. I guess
it will be difficult.
So SCO has to owercome the following obstacles:
1a) JFS is copyrighted IBM, and SCO has no "IP" rights in it
whatsoever,
1b) IBMs unix license explicitly states that what IBM develops is owned solely
by IBM, and
1b) the former owners of unix repeteadly stated that code developed be licensees
are owned by the lisensee and that the unix owner has no right to it.

And in any case:
2) JFS came from OS/2

My guess is that SCO will have a hard time here, but IANAL.

I think this is a manouver by SCO to make us think that nothing from AIX is
allowed in linux. They surely know that the JFS code is from OS/2, but if they
trick us into arguing that "it's not from AIX" is the only valid
argument, then they maybe finally will show us some AIX code in linux and we
will all be staring with our mouths shut not remembering that wether it came
from AIX or not is not the issue. The issue is wether or not SCO has any rights
to the code. And they don't, even if were coming from AIX.

[ Reply to This | # ]

Groklaw © Copyright 2003-2013 Pamela Jones.
All trademarks and copyrights on this page are owned by their respective owners.
Comments are owned by the individual posters.

PJ's articles are licensed under a Creative Commons License. ( Details )