		    Linux STREAMS Package

		          L i S

NOTE

This is a very abbreviated version of the Lis documenation.  The complete
documentation is now in html format.  It comes with the LiS distribution
in the directory htdocs.  It is available over the Internet at
http://www.gcom.com/LiS.

INSTALLATION

If you have installed a previous version of LiS you need to extract
it from your kernel before installing this version.

We recommend unpacking the tar archive in the directory /usr/src.
Use the following command:

    tar xzf LiS-1.25.tgz

It will make a subdirectory named LiS-1.25

Change directories to LiS-1.25 and type in "make".  The LiS package
will install itself.


KERNEL COMPATIBILITY

This version of LiS will install in any kernel version from 2.0.24 through
2.0.36 (and possibly beyond).  It will not yet install correctly in any
2.1 kernel.

The LiS software resides outside the kernel source tree.  It can be configured
to run as a loadable module or be linked directly in with the kernel.

Kernel versions 2.0.24 through 2.0.35 require a small patch containing
"hooks" for LiS.  Kernel version 2.0.36 has the hooks already in the
kernel source.  For this reason, versions of the 2.0 kernel from 2.0.36
and onward should all be equivalent as regards the installation of LiS.


EXTRACTING OLDER VERSIONS OF LiS

There are two methods, both manual, for extracting an older version of
LiS from your kernel source.

1) Change the name of your kernel source directory, as in

	mv /usr/src/linux /usr/src/linux.old

   and then untar a fresh kernel source as /usr/src/linux.  This
   method works fine if LiS was the only patch to your kernel.

2) In your kernel tree, do the following:

	cd /usr/src/linux/drivers
	rm -r streams

   That deletes almost all of the files that came with the old
   version of LiS.

   Next, you must restore the patched kernel files to their
   original state.  From the directory /usr/src/linux, look
   for the following files:

	LiS:
	    arch/i386/kernel/entry.S.orig
	    fs/read_write.c.orig
	    fs/select.c.orig
	    kernel/ksyms.c.orig
	    init/main.c.orig
	    include/asm-i386/unistd.h.orig
	    drivers/Makefile

	Semaphores:
	    arch/i386/lib/semaphore.S
	    kernel/sched.c.orig
	    include/asm/semaphore.h.orig

   If you do not have any other patches applied to these files, then
   change their names back to the original file names (these names
   minus the .orig suffix).  Not all of these files will be present
   on every version of the kernel.  Kernels later than 2.0.30 would
   not have had the semaphore patch, for example.

   If you have other patches in these files then you will need to
   consult one of the following files from the newly installed
   /usr/src/LiS directory:

	patches.kernel.24-27
	patches.kernel.28-34

   There is really no recourse at this point other than to examine
   the patches and manually extract the LiS patches from the
   affected files.


David Grothe
<dave@gcom.com>
