Subject: Linux: the next step

From: [email-masked] (Ariel Faigon)
Date: Wed, 31 Jul 1996 17:48:43 +1700 (PDT)

Hi Linuxies,

So soon the port will be "over".

What's next?

Can we turn this from a neat hacker's adventure into
something really beneficial to SGI?

Thanks to Larry and David, I started collecting some
thoughts in:

	http://info.engr/linux/next-step.html

P.S. I also talked to some people who oppose all this
so I made their voices heard in:

	http://info.engr/linux/skeptic.html

I hope you'll find these two mildly interesting.
I wish TJ could join us in this new endeavor.

Any constructive input is as always welcome.
-- 
Peace, Ariel

---

From: "Alistair Lambie" <[email-masked]>
Date: Fri, 2 Aug 1996 15:37:37 +0000

On Aug 1, 12:51pm, Ariel Faigon wrote:
> Subject: Linux: the next step
> Hi Linuxies,
>

My 2c...maybe it isn't even worth that much!  I know that there is a lot
of politics here, so some of this may be just dreaming....

I'll break it into the same sections as Ariel has:

We need more contributors to keep momentum:

1. We will HAVE to seed machines to people as I'm guessing most people have
   ~$0 budget for hardware.

2. We need to make sure the basic tools (gcc/glibc) make it as seamless
   as possilble to port things (ie, just configure/make and it happens).
   I think David is doing a great job here, but we are probably going to
   need an ongoing effort from a real good libc hacker who can get any
   compatability/conflict type problems sorted intelligently.  What is
   David's commitment when he leaves...or are we going to let him leave??

3. We need to get some of the neat Indy features supported.  We need
   an SGI graphics wizard to make X fly, then things like ISDN and audio.
   These are the sorts of things that will make people want to use Indy's
   as their primary dev environments.  Fast and great functionality.

4. We need to have some people who are able to commit to help contributors
   who need to find out things.  It needs to be easy for people to find out
   information they need.  This is a tricky area as sometimes people really
   will need to know confidential info...how can we handle this.  I know
   Ralph has found it real difficult at times to find things out...we need
   to make this easier so as not to slow things down.

We should start thinking marketing

1. I believe RedHat would be the best candidate for distribution.  I would
   like to see it 'launched' at some high profile conference (Linux related),
   have it on a CD that has 'awesome' artwork (the old WebForce CD's are a
   good example) and becomes a great collectors item afterwards, and is
   packaged with a real cool T-Shirt for the first X copies.  This stuff
   should be firmly Linux relevant from the design point (penguins??) but
   at the same time be SGI through and through.  SGI should probably
   contribute this part.

2. Don't let marketing name it or we'll get Cosmo Linux....just kidding :-)
   I think we need to emphasis that SGI has put real dollars into this and
   is committed to make it work, rather than the 'faster' bandwagon.  To
   emphasis this point I feel we need to have it run on any new platforms
   at first shipment, and support the neat features.  Nothing will kill it
   quicker than if people get this feeling that this is second tier and
   nobody cares.  We need a number of us to commit to give quality help to
   people on mailing lists/newgroups.  Shucks...maybe if we even had 5% of
   the budget IRIX has...

3. Sponsor Linux events etc....give away Indy's etc...and other things like
   apparel and mugs.  These should all have professional art work that is to
   die for....this stuff works when people really want it.  It should really
   put SGI in front of people.  My feeling is that we can really get in front
   of the technical people in a lot of places and get them on our side.
   While they might not be the decision makers, it sure helps sales people
   if the techo's in the organisation are on side rather than fighting
   against you!

4. A Web/FTP server is a great idea.  Let's get some real great design on the
   Web server though so that the quality is similar to Silicon Surf.  Again,
   it gets the message across that we are serious, committed etc.  We also
   want people accessing as many things with .sgi.com in them!!

5. If we can't get people to come to sgi, how about we sponsor good net
   connections for them that are in a domain linux.sgi.com.  Subtle, but it
   does get sgi associated with them on the net....and we do have a backbone
   to most parts of the world.

> 	http://info.engr/linux/skeptic.html

One comment I would make here is that people really need to work out whether
we are a hardware or software company.  I realise that this is probably
contentious (sp?), but my feeling is that we are a company who make hardware,
and the software is really a means to an end...selling more hardware.  If this
is true, then people need to look at where we are going to get the greatest
number of hardware sales from....Irix or Linux.  We need both I think to hit
different markets, and maybe we even need NT (don't want to get into that
argument!).  Maybe we should be getting agreement from management for funding
based on sales, and I'll bet we can get a lot more mileage from the funding
than Irix will :-)

> I hope you'll find these two mildly interesting.

It's great having someone pull it all together, thanks.

Cheers, Alistair

-- 
Alistair Lambie					    [email-masked]
Silicon Graphics New Zealand				  SGI Voicemail: 56791
Level 5, Walsh Wrightson Tower,				    Ph: +64-4-802 1455
94-96 Dixon St, Wellington, NZ			  	   Fax: +64-4-802 1459

---

From: Nigel Gamble <[email-masked]>
Date: Fri, 02 Aug 1996 16:07:40 -0700

Alistair Lambie wrote:
>    To
>    at first shipment, and support the neat features.

Dream on!  Here in ISD (Indigo2 land), we're working flat out just to
get IRIX to run on any new platforms at first shipment, with all
the neat features supported.  I think you'll find the same
is true of all the other product divisions.

> based on sales, and I'll bet we can get a lot more mileage from the funding

We are neither a hardware company nor a software company.
We are a *systems* company.  We build the best computer systems
on the planet through a combination of hardware and software
working together.  If we replaced IRIX with NT, we would have
to cancel most of our high performance hardware projects, because
NT will not support the new systems.  As for Linux,
when will it support true symmetric multiprocessing with fine-grained
semaphore and mutex locking, and a fully preemptible kernel?
At the San Diego Usenix earlier this year, Linus Torvalds
thought that the probable answer was "not anytime soon".
(By the way, in order to do this correctly, every device driver would
have to be rewritten.)  Linux would need this *at a minimum* before
there is any hope that it would supplant IRIX on the current
generation of hardware, let alone any future new platforms.

-- 
Nigel Gamble       "Are we going to push the edge of the envelope,
Brain?"
Silicon Graphics   "No, Pinky, but we may get to the sticky part."
[email-masked]
(415) 933-3109

---

From: "David S. Miller" <[email-masked]>
Date: Fri, 2 Aug 1996 16:54:06 -0700

Date: Fri, 02 Aug 1996 16:07:40 -0700
   From: Nigel Gamble <nigel@cthulhu>

   Dream on!  Here in ISD (Indigo2 land), we're working flat out just
   to get IRIX to run on any new platforms at first shipment, with all
   the neat features supported.  I think you'll find the same is true
   of all the other product divisions.

I am one person, I am getting close to bootstrapping a complete Linux
system on the INDY in the course of 3 months.  The only way I could be
dreaming is due to the fact that I have been hacking for 30 hours
straight with no sleep at all and this isn't even flat out for me
actually.

   We are neither a hardware company nor a software company.  We are a
   *systems* company.

Although this may be true, what ever sells your hardware could foot
the purpose correct?  The margin comes from the hardware, and as you
say the software is there to make that hardware capable of doing
something.  If Linux could do this, and sell SGI hardware, SGI is
doing the same thing it is today in my estimation.

   As for Linux, when will it support true symmetric multiprocessing
   with fine-grained semaphore and mutex locking, and a fully
   preemptible kernel?  At the San Diego Usenix earlier this year,
   Linus Torvalds thought that the probable answer was "not anytime
   soon".

Linus, myself, and some other key developers have come to the
conclusion that the current way of doing SMP is no more than an
intellectual curiosity and nothing more.

What he had in the back of his mind when he made that statement at
Usenix was really, "Linux is not going to scale it's SMP in that way."
But being the person that he is, he decided not to put it that way
until he had a cast in stone proof of concept that another way was
indeed possible.

With Linux, thankfully, we have the luxury of really thinking about
how to correctly go about something like a scalable SMP kernel
architecture without a deadline hovering over our heads.

However, I will be frank, and say that no we do not have this SMP of
all SMP figured out yet.  But I do believe that we will come up with
something not short of impressive and cutting edge.

If I had to guess at how we'd go about it, generally?  I would venture
one of the following or a combination thereof perhaps:

1) Scale to 4 cpus and nothing more, cluster past that, run seperate
   kernels on each processor group of 4, which live in their own
   little world and do not have shared resources with the other
   cluster kernels.  With the exception that clusters can pass
   processes between each other when load on one get much too high
   than the others.  (I'm a bit sketchy on any of the real specifics
   on how we would pull this one off entirely)

2) Away with the locks completely, if you are going to do SMP then
   don't add a brick wall to the equation as a means to an end.
   Through numerous conversations with Linus I have deteremined that
   he and I agree that locks all over the place is not the way to go
   and neither is pre-emption.  We believe that the purpose of locks
   can be replaced entirely with carefully designed data structures
   that are atomic via the way they are accessed.

Again these are just off the top of my head, unfortunately I haven't
had the opportunity to get into the zone and put all of my senses into
getting these ideas out of perpetual beta.  I was hoping that if I
got the initial INDY port out of the way and functional very quickly
I'd finally have a chance to think about these things and come up with
something concrete I could actually implement and start playing with.
This is along the lines of what I wanted my big contribution back to
SGI to be for allowing me to have this internship, however it was
obviously necessary to get a proof of concept Linux implementation out
the door on a machine before I could start doing things like that.

My real point is, yes we cannot scale very well on the type of
machines you mention, we do not have fine grained SMP and kernel
preemtion.  The current view I propose is that this method of doing
SMP is one of many oysters that could have been opened to satisfy the
needs of the task at hand.  However I feel that the oyster with
the real pearl of an SMP implementation in it has yet to have been
found.

Putting Linux down because it cannot do what Solaris2.5, SVR4.2MP, and
IRIX can do "today" on very high end hardware I would consider to be
an oxy-moron.  All of it's code has been written by contributors in
their spare time and out of their own good hearts on the low end
hardware they could only get their hands on.  And even with those
constraints, we have things which the other freely available operating
systems simply do not have an probably will not for a very long time.

But now all of this is slowly but surely going to change, as more and
more people like myself get the opportunity to express their hacking
talents on high end hardware (the systems where the capabilities you
mention even matter) via contributions such as my internship and
hardware loans to the various developers, this gap will get smaller
and smaller especially if the current pace of Linux keeps up.  This is
one thing I can assure you of.

Maybe the real issue is, now that I think about, we haven't put our
efforts into crossing that bridge, because we have not gotten to it
yet.  When we do get there, it'll show time baby.

[email-masked]

'Ooohh.. "FreeBSD is faster over loopback, when compared to
Linux over the wire". Film at 11.' -Linus

---

From: [email-masked] (Alistair Lambie)
Date: Sat, 3 Aug 1996 12:12:32 +1200 (NZT)

> is true of all the other product divisions.
Yeah, I know!!  This may be a dream, but I think it is to some degree achievable.
The thing with IRIX is that EVERYTHING has to be integrated and commercial 
quality on first ship.  What we really need to do in Linux is expose the 
interfaces to things.  If we give enough info to people it will generally 
happen.  I don't know what is involved to do this...maybe a skeleton driver
or something.  It doesn't really matter whether it is optimised, or even bug
free, just as long as it gives those with the ability to write code like this
enough info to work with.  As for applications and things to use this stuff,
thats up to the Linux community to do!

> generation of hardware, let alone any future new platforms.
Yup, you're right, we are a systems company.  I don't expect that Linux will 
replace IRIX even in the distant future.  IRIX isn't going to stand still, but
nor is Linux.  One of the things I have noticed about Linux is that when 
someone shows the way, things happen fairly quickly.  Probably Linus's comment
about the symmetric multiprocessing was based on available resource, rather
than a lack of desire to do it.  Maybe this is an opportunity for SGI to 
provide some input into the Linux community...if we were to do some starter
work on this (on one of our boxes of course!!) I'm sure that others would 
pretty soon catch on.  The big thing with Linux is that we don't have to do all
the work....a bit of work on an initial framework and a push in the right 
direction is often all that will be necessary.  Let's take the ISDN port on 
the Indy....if we somehow show people how to use this, I'm sure it won't be
long before someone outside of SGI gets it up and going!  Same with audio.

Let's not think in terms of supplanting IRIX, let's look at growing the number
of boxes we ship.  That's got ot be good for us!!

Cheers, Alistair