Marcelo Tosatti, a Brazilian developer working for Linux distributor Conectiva, took over maintenance of the current "stable" Linux kernel, version 2.4, last autumn. He took over from Alan Cox, a major figure in the Linux community and long-time maintainer.
In an interview with ZDNet UK, Tosatti talked about his daily job of applying kernel patches from all around the Internet, the way ahead for Linux and his US visa problems.
Q: Are things much more difficult for you as a programmer now that you're maintaining the kernel?
A: It was much, much easier (before). Because before I could say, oh, I want to do this, or I have to do this. I could work on one area (of the kernel). Now I receive one page which touches VM, and then the next page which I read two minutes later touches on ACPI, and the next page touches on drivers. So I can't really have a mindset any more, because I have to work on so many different things. It's very difficult. How are things different now that you've been on the job for about nine months?
It's less stressful. At the beginning I was not used to doing interviews, and I had like ten a day. So I was like, what is going on? Now I'm used to it. Do you still try and find time to work on other projects?
Yes. There are some things that I thought I could work more, but I realised I couldn't. I couldn't hack too much any more. I need to do more boring things, to be more methodical. Because it's really keeping the thing working, it's not anything exciting. It's not like working on 2.5 (the development kernel).
Yeah, that kind of thing is really sexy. Why did you want to take on the role of kernel maintainer?
I don't know... A new experience. To try something new. I just received this Linus email... The thing was really weird. I just got an email one day. There was an email from Linus to Alan saying: "You don't want to be maintainer any more, so who do you suggest?" Alan says, "Marcelo or Andrew Morton." And Linus says, "Oh, I'm OK with it." Then they fired off the message to me. I answered yes. Do you think you realised how much work it would be?
No! At the time I answered that mail, no. It's a lot of work but it's worth it. Alan Cox stuck with the role of kernel maintainer for several years. Do you see yourself remaining in the role for as long?
No, not for such a long time. I don't know if Linus is OK with me maintaining 2.5. He probably is. But, I'm willing to maintain 2.6, and after that I want to do some more hacking. What are the biggest challenges of the job?
Making the right decision. It's really difficult. I mean, some stuff is really non-obvious. Sometimes you have a bug and you have a bug fix which looks obvious, but it may introduce lots of other problems, so you have to be really careful. Because it's the stable (kernel). You have a responsibility. It's easy to go and do stuff, but when you think of the number of people who are working on this, who are using Linux, then you realise, OK, I need to be really careful. And that is challenging, for me at least. What are the main issues with the kernel at the moment?
With VM (virtual memory) on high-end machines, we have some problems. We have IDE problems too. Some chipsets are corrupting data, which I'm really worried about. IDE and VM are the big issues. Do you see the increasing size of the kernel as an issue -- in other words, kernel bloat?
Kind of. It isn't necessarily a big issue... If you have several drivers, that's alright, you can have a lot of them. Things are layered. You have the core, and then you have the drivers down there. So if this (the drivers) bloats, it's not as bad as if the core bloats. We have to make sure the core does not bloat. The number of drivers will increase, and that is a problem. Because, for example, when you change an API you have to change all the drivers and you kind of cope with that. You have to deal with all of the drivers because you have to support a large amount of hardware. What is the hack you're most proud of?
VM performance hacks really. VM and processor hacks. When you go back to hacking, will you go back to VM?
No, because I've already worked on that for a long time, so I want to do something different. For 2.5, if I have time, which I don't think I will, I wanted to do some SCSI subsystem and some things for the high upper end, high availability. There are a lot of potentially clashing personalities in the Linux world. How do you deal with them?
I just try to be as technical as possible. It is very important to me... People do not use the right words some of the time. Starting a fight is really easy. But instead of saying, for example, "You are full of shit," you can just say, "I don't think you are really right." You have to use the right words. But that is not a terrible problem in my opinion. Just using the right words and trying to be nice to people. It's just technology, so why do these clashes come up, do you think?
Because people are there. Egos show up. What do you see as the big opportunities for Linux at the moment?
We are getting into a lot of markets. Embedded is a really big market and I guess people don't realise how big it is. You could have Linux in a camera mounted on the wall over there. It's everywhere. So it's a really big market. And it's a really big challenge, because it's really hard and complex to work with this stuff in my opinion. And the enterprise is a big market, a big opportunity for us. Linux could be moving much more deeply into the enterprise. And the desktop. Linux is growing in the enterprise very quickly but not so quickly on the desktop. A study with an anti-Linux slant recently implied that you can tell Linux is buggy because of all the patches that vendors distribute. What's your take on this?
That's a false assumption. It depends on what's being patched. It might just be a minor patch. And it shows we're doing our job. No piece of software is perfect. The patches just show that we're correcting the problems that always exist. If Microsoft could do this they would have much more updates than we have, because their software is much bigger than ours. So I think this anti-Linux assumption is just nonsense. Red Hat, SuSE and others have started to release servers tailored to the enterprise, which have fewer updates and are much more controlled. What do you make of this new direction?
I think there's a need for that. Enterprises don't want there to be so many changes, they don't want to be applying patches all the time, so it makes sense to have a version that doesn't change so much. Your company, Conectiva, recently joined with three others to standardise on a single distribution called UnitedLinux. MandrakeSoft has criticised the move, saying that UnitedLinux has no technical reason to exist, and is purely market consolidation. What's your response?
It is more a business issue. In fact it is completely a business issue. But it is better this way, because it reduces the number of big commercial distributions down to about two, really. Certification is one of the biggest issues. For ISVs it's incredibly expensive to have to certify their software for every distribution. Somebody like Oracle has to test its software on every distribution to make sure it works. So this makes it a lot easier for ISVs. MandrakeSoft implied that distributions and ISVs could simply certify for the Linux Standards Base (LSB), instead of for UnitedLinux or Red Hat or whatever.
That doesn't really work, because there are a lot of things that aren't covered by the LSB. You can't just certify for the LSB. What are the challenges ahead for Linux?
We need to get ordinary people used to using Linux. It isn't that it's so hard to use, it's just different. People say Linux is hard to install, but if you gave somebody Windows and had them install it, not everybody would be able to do that. There are some simple problems that non-technical users might have with Linux, such as installing new software, or finding certain files that they need in the system. What's the solution to that?
With things like installing software, I don't know. There are just some things you have to know to use a computer. It's the same with Windows. There are some people already working on this, like Mandrake. Everybody is working on this, in fact. Maybe they aren't pushing hard enough. Do you see the DMCA (Digital Millennium Copyright Act) as a problem for Linux developers? Would you, like Alan Cox, avoid going to the US because of it?
The DMCA is a big issue. But it doesn't affect Linux developers so much. For the DVD rippers, though, it's a big problem. I wouldn't avoid going into the US because of the DMCA, but I can't go there anyway. I went into the US for business on a B1 tourist visa, by mistake. I've been doing it for a long time, I never thought about it. They turned me away, I had to turn around and fly back. Before they always let me into the country on this visa, but after 11 September they're more paranoid. It's not a big deal, with the B2 (business) visa you just have to pay $40. But now I can't go into America.