Re: LiS and Linux 2.6 (SuSE 9.1 and SuSE 9.2)

"Brian F. G. Bidulock" <[email protected]> Mon, 11 Apr 2005 14:40:59 -0600
Newsgroups gmane.linux.kernel.streams
Organization http://www.openss7.org/
Message-ID <[email protected]>
dan_gora,

On Mon, 11 Apr 2005, dan_gora wrote:

> 
> 
> brian_bidulock,
> 
> Thanks... We've had it working on SuSE 9.1, 9.2, SuSE EL 9 and RHEL4
> plus the 64 bit flavors of the above for a couple of months now.  I
> posted a couple of lists of the things that I had to change to get
> things working for these platforms.  I'm sure that they are still in
> the archives.

I don't know what a SuSE EL 9 is, but I have 2.18.1 loading and
running on:

	RedHat Linux 7.2
	RedHat Linux 7.3
	RedHat Linux 8.0
	RedHat Linux 9

	SuSE 8.0 Professional
	SuSE 9.1 Personal
	SuSE 9.2 Professional

	WhiteBox Enterprise Linux 3 (RH EL3 clone)
	CentOS Enterprise Linux 4.0 (RH EL4 clone)

	Fedora Core 1
	Fedora Core 2
	Fedora Core 3

	Mandrakelinux 9.2
	Mandrakelinux 10.0
	Mandrakelinux 10.1

	PT NexusWare 24

	Debian 3.0r2 (Woody)

The tarball builds a single unitifed SRPM and RPMS for each of
these architecture.  It also builds a Debian DSC and DEBs for
Woody.

> 
> What did you do to fix the problems with syscall interface for 64 bit
> platforms?  I mentioned in one of my lists that I had to remove all
> of those syscalls for 64 bit builds because you cannot call system
> calls from within the kernel on 64 bit platforms, it just panics or
> freezes the machine.

This was fixed on openss7 LiS-2.16.18 releases a long time ago.
On parisc, one cannot execute a system call from within the
kernel.  I rip the sys_ symbols on the kernel side of the call
gate and call them directly.

There are probably more things required for full 64-bit safety,
however, I do not have any 64-bit test platforms.  Anybody
willing to donate some?

> 
> I never released all of the changes that we at Adax did to LiS 2.18
> because I still have not had a chance to go back and fix the ldl
> driver which was broken by these changes.

I have split ldl and related DLPI and NPI modules into a
separate strxns package, however, they build and run against
both LiS-2.18.1 and streams-0.7a.3 (Linux Fast-STREAMS).

> 
> What ever happened with your linux Fast-STREAMS.  Did you ever
> release that publicly, or is it only available for purchase?

I haven't released it publicly yet, more so because it is not
fully ready, not because we want anyone to purchase it.  I have
some debugging and testing to do on the various architectures
and distributions before relasing it is ready for prime-time.  I
is still my intention to replace LiS with it.

Linux Fast-STREAMS compiles and loads on all the above
architectures and distributions as well.  I have split off a
strxns package (ldl, ip_strms stuff, DLPI, NPI headers and
docs), strxnet package (timod, tirdwr, libxnet, TPI, XTI headers
and docs), strinet package (inet driver), strsctp package
(STREAMS sctp driver).  The purpose of spitting these packages
our of LiS was so that they would build and load against both
LiS and Linux Fast-STREAMS from the same codebase.

In wrapping LiS 2.18.1 under autoconf I was very disappointed to
observe SMP races by simple inspection.  (If you want a quick
example look at how lis_freezestr and lis_unfreezestr examine
flags outside of locks and then take locks and change flags
depending on the unlocked check.)

I will apply patches and fixes to 2.18.1 and maintain the code,
however, all my further development effort will be on Linux
Fast-STREAMS instead of LiS.  If you work with the 2.18.1
release, you should move quite easily to the Linux Fast-STREAMS
release that has lis_ compatibility functions and is largely
source compatible with LiS.

> 
> thanks for the new release, looking forward to see it.

Your welcome.  I hope it can be a stable branch along which
patches can be made as required.

--brian


> 
> -dan
> 

-- 
Brian F. G. Bidulock    ¦ The reasonable man adapts himself to the ¦
[email protected]    ¦ world; the unreasonable one persists in  ¦
http://www.openss7.org/ ¦ trying  to adapt the  world  to himself. ¦
                        ¦ Therefore  all  progress  depends on the ¦
                        ¦ unreasonable man. -- George Bernard Shaw ¦