|
|
Subscribe / Log in / New account

Leading items

An interview with Linus Torvalds

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)

Interview with Gaël Duval

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

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>>


Copyright © 2003, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds