LWN has been reporting on the Linux and free software community for well
over five years now, but, during that time, we've never gotten around to
interviewing Linus Torvalds, the creator and maintainer of the Linux
kernel. That oversight has now been rectified. In the following
interview, Linus talks about 2.5, 2.6, and 2.7, SCO, and how the kernel
development process works.
Kernel releases
What are, in your opinion, the most significant accomplishments from the
2.5 development series?
There's a number of them, and the ones I think are most important others
may not find as interesting. I personally tend to find "infrastructure"
things more important than adding particular drivers support, for example,
even though to most _users_ the actual drivers are often more important.
During 2.5.x, the things I thought were most noticeable are a nicer and
better VM subsystem, a better block IO layer, and the improved threading
support. All of them do help performance in various circumstances, but
more importantly (to me) they were all fairly central cleanups and help
keep the code maintainable.
Any regrets or things you wish had come out differently in 2.5?
Hey, I always wish we'd do stable releases more often, and I always end up
ignoring my own wish and go for "more changes". It makes the release
process a lot harder (more things have changed results in more
verification and debugging effort), but it does make development more
satisfying.
Looking forward to 2.7, do you have any particular goals in mind for that
development series?
No, I seldom do. In 2.5.x, we fixed the things I was worried about and
that I wanted fixed.
But inevitably, new needs and uses will come up, and I'm not worried about
running out of stuff to do. I just don't plan much ahead, I much prefer to
take a reactionary stance and see what people actually complain and care
about, rather than having a "5-year plan".
Do you have any particular expectations or hopes for the upcoming kernel
summit in Ottawa?
To me, the biggest thing is to hear what people are working on or
interested in, and get together to just discuss stuff under reasonably
organized circumstances. For example, I bet I'll have more of a notion of
what people are holding back for 2.7.x..
It took the better part of a year - after 2.4.0 - for the 2.4 series to
stabilize sufficiently for the 2.5 fork to happen. Do you foresee doing
anything differently to stabilize 2.6 more quickly?
It's always hard to tell. One big problem for the 2.4.x series was the VM,
and I think we're _already_ in better shape in 2.5.x than we ever were in
2.4.x. So I'm pretty optimistic, but it's always hard to anticipate
everything that pops up when a lot of new people start moving over from
2.4.x to 2.6.x.
Development process
Over the course of 2.5, a number of developers, some of whom have
contributed useful stuff, bowed out of the kernel project after facing too
much criticism that was too harsh. Do you think this is a "if you can't
stand the heat, get out of the kitchen" sort of situation, or could the
process perhaps change to be a little more friendly?
I do believe that the kernel mailing list has become too acerbic at times.
It can be amusing to read the flame wars if you take them the right way,
but not everybody is willing or able to stand back and enjoy the
fireworks. It's something I worry about - it tends to be always easier to
criticise than to actually fix things.
I'll see what I can do about it, if anything.
There have been complaints that recent development has been strongly
oriented toward large-system scalability at the expense of the rest of us
with "normal" systems. Over the longer term, however, a high priority has
been placed on not allowing support for high-end systems to compromise
performance for everybody else. How do you feel about the balance between
the kernel's support for large and small systems? Does anything need to be
done to ensure scalability to the low end?
I think the drive toward "sexy" systems (lots of power, lots of CPU's,
tons of memory, etc) is a fairly natural one, and it's something that gets
attention, and I think that's also why people see that development more.
And yes, scalability has improved a lot, but at the same time you should
realize that 99% of all Linux development is still done on basic desktop
machines. So most developers still care mostly about that kind of
hardware, and so while the "big iron" thing gets most attention and is
most visible, it's not where most of the action _really_ is.
I personally, for example, always just work with a "high end desktop"
system, expecting that what is high end today will be pretty much regular
in another year or two.
In many ways, the kernel development process appears to be working better
than it ever has. The flow of patches into the mainline is astounding, and
most of the major developers seem to be relatively happy. Things appeared
rather rougher at the beginning of 2.5; to what do you attribute the
improvement? Is it all due to BitKeeper, or are there other things going
on?
I definitely think BitKeeper helped, but on the whole people are always
happier in development kernels than they are when you have to be careful.
So expect some grumbling during 2.6.x when developer frustrations mount,
when they can't just go wild.
The lawsuit
SCO has finally fingered some specific contributions to the kernel as, they
say, infringing on their rights. Do you think there's a chance that things
like RCU and JFS will have to come out before 2.6 can be released? How do
you think you might respond if SCO demands their removal?
I don't think it's likely, especially since everything that SCO has
fingered as being stuff they object to, they don't actually seem to have
any IP rights claim over. They're all stuff written by IBM (or Sequent,
which was bought by IBM), and everything looks very much above board as
far as IBM goes.
I'd find it very unlikely that IBM had given exclusive licenses to SCO for
the thing, especially as IBM apparently used some of the same technology
for other projects earlier (ie OS/2). So from what I can tell, SCO really
doesn't have a case - at least on the IP side of things.
Whether SCO has a case on the contract side, I just don't know. I'd be
surprised. But I don't even have to care, since any contractual issues are
clearly between IBM and SCO, and have nothing to do with me or the kernel
(and contract law is a whole different area from IP rights, so SCO's
blathering about Linux not respecting IP rights seems to be just a rabid
rat frothing at the mouth, as far as I can see).
Do you foresee any changes to the kernel development process in the future
to avoid the possibility of proprietary code being incorporated?
Hey, I claim that open source is a lot safer than proprietary code bases:
people have full visibility in what goes in, and we can go back through
archives etc to see who did what. In other words, we already _have_ the
process in place to make sure that people don't try to misuse IP rights.
Miscellaneous topics
You've just announced a move over to OSDL, to work full-time on the
kernel. Do you have any great plans for your extra time?
I've never had problems with "extra time". As far as I know, "extra time"
as a concept is right up there with Santa Claus and the Tooth Fairy.
Recently you have been peppering the kernel with __user annotations which
can be used by the "sparse" tool to find improper use of user-space
pointers. I've always wondered why the kernel doesn't simply define a
"userptr" type which would allow mistakes to be caught by the compiler?
The problem with a "userptr" type is that there is not just _one_ type of
user pointer, there are hundreds. User pointer to _what_? You need a bit
outside/perpendicular the regular type system, to say it's a "user pointer
to a 'struct stat'".
I mentioned that to some gcc people, and nothing ever appeared, so I
decided to do it myself.
Would it not make sense to make a similar distinction between physical and
kernel virtual addresses?
It could certainly be done, with the tool I already wrote. We've never
really had that as a major problem, though. Usually we use "unsigned
long" for physical addresses (or things like "page frame numbers", ie they
are an index to physical pages, not a whole address). Those have never
been directly dereferencable, so we've not had the same kind of "buggy
code works by mistake" situation that we've had with user pointers.
Thank you, Linus, for taking the time to answer these questions.
Comments (21 posted)
Gentoo forks
[This article was contributed by Joe 'Zonker' Brockmeier]
The Gentoo project is experiencing a few growing pains. The Gentoo
project announced some major management changes for the project itself
last week, while Zachary Welch has announced his intention to form a
non-profit called the Zynot Foundation and a plan to fork the Gentoo
distribution.
Why the "Zynot Foundation?" Apparently, because it was available. The
project's FAQ says the new name was chosen because the domains were
available, and because it's a name that can easily be spoken and
spelled. The name of the actual distribution is still up in the air,
according to the Zynot FAQ, and will be chosen by the community. Welch's
"Reasons for Forking A
Linux Distribution" details his reasons to break off from Gentoo and
to form a new project. It's a lengthy read, but to put it succinctly,
Welch had a number of issues with Gentoo lead Daniel Robbins and the way
that the project was being managed -- both from a business perspective,
and from a developer's perspective. Welch had hoped to further Gentoo in
the embedded market, and eventually decided that it was too risky to
move forward using the Gentoo name.
...the current situation that appears to place the Gentoo Linux
distribution and brand arguably in the sole possession of Gentoo
Technologies, Inc., and any sane business that contributes to the
project should be very careful about balancing their expectations with
the possibilities that such a monopoly entails... Every contribution
made to Gentoo builds the brand of the distribution, value that is not
being fairly shared with those members of the community that have helped
build it.
Welch isn't the only developer to express dissatisfaction with Robbins'
leadership of the project. Last April, Geert Bevin left the project and
wrote up a summary of his reasons for doing
so. According to Welch's "Welcome to Zynot" e-mail, the Zynot Foundation will be putting out some kind of release in time for LinuxWorld Expo in August, as well as having a booth at the show.
While the Zynot Foundation is getting started, the Gentoo project will
be busy implementing a formalized management structure. The proposal,
put forth by Robbins, seems to be fairly straightforward. It establishes
a formal management hierarchy and responsibilities, channels of
communication and so forth. The document doesn't address process by
which one would become a project manager, so it seems they will be
granted their position by the "Chief Architect," which would be Robbins
himself.
Welch's departure also means that Gentoo will need to find some new
hardware and hosting. Apparently, much of Gentoo's infrastructure,
including CVS, their Web server, Wiki and Gentoo Bugzilla are hosted on
machines owned by Welch and co-located at Oregon State University.
Regardless of Welch's reasons for doing so, it remains to be seen
whether many in the Gentoo community will be willing to follow Welch's
fork of the project. Gentoo has a fairly devoted user community as well
as a fair number of core developers. According to Welch's estimate,
Gentoo currently has a user base of about 150,000 people. It will take
some doing to achieve the same kind of success with a new project.
Comments (3 posted)
LWN editor Jonathan Corbet talks with Gaël Duval, creator of
Mandrake Linux and co-founder of
MandrakeSoft.
____
LWN: You were the creator of the original Mandrake Linux
distribution, and a co-founder of MandrakeSoft. What is your current role
with the distribution and the company?
GD - I'm officially taking care of MandrakeSoft's communication, but
I'm helping for other things and projects as well.
LWN: In an OSNews interview last
March, you said "9.1 sales and club subscriptions are going to be
key." How are sales and subscriptions going at this point? Are
they at the level you need?
GD - The levels of Club subscriptions and 9.1 sales have been very
good. That's one of the reasons why our future is becoming better every
day. Mandrake 9.1 is an excellent product, that made it successful. On the
other hand, the Mandrake Club and all its benefits, in particular the huge
application repository that can be interfaced with the Mandrake application
manager and dependency solver (URPMI/RPMDrake), has gained popularity among
Mandrake users. As a result, the Club is turning into a real business model
(in short: a free product plus value-added online services). As the whole
Linux retail market has been dramatically and continuously decreasing
during the past 3 years (mostly due to high-speed domestic Internet
connections), this new business model for selling Free Software products
really makes sense, and we certainly are one of the first Linux makers to
enter this model.
LWN: The Mandrake Linux distribution has become difficult to find -
at least, in U.S. stores. Do you plan to try to get back onto retail
shelves (if so, how?), or are retail sales no longer a priority for
MandrakeSoft?
GD - There is a simple reason for that: we broke our agreement with
distributor Pearson recently. They are not interested in Linux as they
have been in the past, and we weren't very happy with the sales. So we
made the decision to take time to look for new distributors in the USA,
and we encouraged users to come to MandrakeStore.com where our margins
are really much more interesting than with traditional retail sales.
Anyway Mandrake packs should be back in many US stores with the 9.2
version, with a new distributor. This is important at least for
MandrakeSoft's brandname exposure and presence.
LWN: How is the reorganization process going in general? What
changes is MandrakeSoft making, and how do you expect them to help the
company's long-term survival?
GD - The reorganization is nearly completed. We had to review the
company's priorities in term of technology and businesses. We had to scale
the structure down to the point where we do not spend more money than we
earn. We also had to convince everyone at MandrakeSoft that sales are now
the big priority.
LWN: When does MandrakeSoft expect to emerge from the bankruptcy
process?
GD - We plan to emerge somewhere by the end of the year. So far this
has been a very positive action for us.
LWN: Mandrake Linux tends to be perceived as a desktop-oriented
distribution. Is that how you see it internally? Where do you expect to
see Mandrake deployed most in the future?
GD - The mission of MandrakeSoft is to simplify Linux and make it
available to all. This means: providing full-featured Linux systems that
are easy to install, easy to set up, easy to use. But this doesn't mean
that we focus on the desktop, because we ship many server products,
including very complex ones such as the Multi Network Firewall or MandrakeClustering...
Additionally, simple command line tools such as our package management
tool "URPMI", are often as important as graphical wizards or
applications. The result is now a large range of MandrakeSoft products,
from the "Standard 9.1" which is a desktop OS, to server and dedicated
security products such as the Corporate
Server 2.1 and the Multi Network
Firewall. Such a large offering is perfect for answering companies'
needs, and that's good for MandrakeSoft because this is currently a growing
market.
LWN: Increasingly, other distributors are coming forward with
versions of their products aimed at the desktop. The trickle of reports of
companies and governments choosing Linux for desktop use is growing. Do
you have a sense of when desktop Linux may take a serious part of the
market? How does Mandrake plan to succeed in a larger but more competitive
desktop market?
GD - This desktop thing has been the most recent Linux' hype. Currently
it's clear that "joe user" is not ready yet to migrate his Windows
desktop to a Linux desktop, for many reasons that are not only technical
reasons. This doesn't mean that there is not a growing base of users who
have definately made the switch to Linux on the desktop (this includes
myself). But the point here is that the real market in the desktop field,
which is not a big market yet, is inside corporations, and that is the
market we are currently interested in.
LWN: You have mentioned that MandrakeSoft will be introducing a
clustering product. Clustering seems like an increasingly crowded
marketplace - though, perhaps, one in which a fair amount of money should
be made. What has drawn Mandrake into this market at this time?
GD - There are two simple answers: 1) we had the chance to get
funding for a research project in this area, and this has resulted into a
great and powerful Clustering product. 2) We don't plan yet to sell this
product everywhere in the world like we do with Mandrake Linux: there are
very few actors in the field of Clustering solutions in France, so we are
going to sell it in France and Europe first. Additionally, it's not only a
product, it's a complete solution that doesn't make sense without the
support and knowledge-transfer which are are provided with this solution.
LWN: What is MandrakeSoft's position on the SCO lawsuit? Are you
taking any steps in response to SCO's allegations?
GD - Our position is very simple: so far there are mostly FUD and
rumours. Let's wait for facts. Anyway, the whole story could possibly
impact Linux' image negatively so we have to take care of that. But in the
end my guess is that SCO is doing a huge error and is going to suffer much
from the situation.
LWN: What enhancements can Mandrake Linux users look forward to in
the next release?
GD - Wait and see :-)
LWN: Is there anything else you would like our readers to know?
GD - Producing and selling Free Software products makes sense. It only
needs a good business model.
Comments (2 posted)
JBoss
[This article was contributed by Joe 'Zonker' Brockmeier]
A few weeks ago a group of JBoss developers split from
The JBoss Group and decided to strike it out on their own as the Core Developers Network (CDN).
We spoke with Greg Wilkins, one of the Core Developer Network members as
well as the founder and director of Mort Bay
Consulting. Mort Bay sponsors development of the Jetty Java HTTP server and servlet
container. Marc Fleury, President of the JBoss Group, refused to comment
for this story.
Wilkins wrote that his experience with JBoss Group had been less than
profitable. "I got 6 hours of support work for being on call for 2 years
- I also was not pushing my own Jetty support business to JBG clients so
I was loosing sales of my own." Wilkins also said that Fleury demanded a
cut of a deal that he had negotiated through Mort Bay for out-source
development that used JBoss "among many other things."
We did not expect to make money from writing our code. But when somebody
started making lots of money by selling access to US the developers (not
selling distributions of the code or anything) - then we felt we at
least deserved a fair share of the branding and scalable income. Not
just to get paid for the hours we worked - we can get that anywhere.
Since leaving the project, Wilkins noted that the names of the Core
Developers have been removed from the JBoss site as contributors, though
they still have CVS access to JBoss and continue to contribute to the
project. JBoss has also replaced Jetty with Tomcat as the default Web
container. Wilkins says that the Core Developers do not want to fork
JBoss, but "we can see situations that may force that to happen." In the
end, there are really two main issues, says Wilkins:
I guess for me there are two aspects to this. One is commercial dispute
between parties - no real big issue there I think they are bastards who
have screwed me and I'm sure they think the same about me - we are
probably both right :-)
But the other is the control of an open source project. It appears that
getting control over just the trademark and CVS write access can be used
to build a very good control mechanism over an open source community.
This can be used to build a near monopoly on commercial services sold
for that project and distribution of those benefits.
While Fleury refused to comment for this story, it's interesting to note
something he said in an interview on
TheOpenEnterprise.com:
The answer is yes. I also believe there's a monopolistic opportunity in
open source infrastructure, just like Microsoft has a monopoly on the
desktop. Free software will create a market that is much more open than
that, but we see ourselves becoming a standard, used everywhere, while
other application server vendors are struggline. That's our end goal, to
become a monopolistic but responsible provider of Web infrastructure.
As open source continues to grow in popularity, and profitability, this
will undoubtably be an increasingly important issue. While the JBoss
code is available for anyone to use, distribute and modify, the
trademark is controlled by a single party. The ability to contribute
code and participate in the direction of the project is also controlled
by the same people who are making it a business venture. Certainly these
abilities could be abused to give one party an advantage over other
companies or individuals seeking to make money from the code.
Withholding the ability to use the trademark, for example, could
certainly hinder the ability of other parties to build a business that
centers around JBoss.
Free and open source software licenses only protect access to the code
itself. Any business based on an open source project will need to be
able to advertise and promote itself -- something that could prove
difficult if they are unable to use the name of the project in their
advertising or marketing materials. Developers who are contributing to
other open source projects may wish to ask the owners of those projects
to clarify their long-term intentions for the projects. If nothing else,
the JBoss situation may prove a cautionary tale for other
business-minded open source developers. According to Wilkins, things
would have been much different if they had gotten the business aspects
taken care of earlier.
...by the time we came to really formalize it, it was too late as Marc
owned the trademark, the company, had the client contracts, the www site
and the CVS access. So we were had all lost our bargaining positions. If
we had formalized it two years earlier before JBoss was really big and
was generating significant revenue - the deal would have been
substantially different.
Comments (1 posted)
Page editor: Rebecca Sobol
Next page: Security>>