Slashdot Mirror


2.4 Maintainer Marcelo Tosatti Answers Your Questions

Now that Linux kernel 2.5 is under development by Linus and others, the all-important job of maintaining and updating the "old" kernel series (the one that people rely on in day-to-day use) has fallen to 2.4 maintainer Marcelo. You asked Marcelo about everything from the influence of politics (age and otherwise) to his working enviroment and approach to maintainership; his answers are below.

1) list of changes for the common folk
by e40

One thing that is really missing is a list of changes in each kernel release that is meant to be consumed by the masses. The "changelogs" that are offered up are sorely lacking for us non-kernel hackers. What I'd like to see is a prose description of the changes in each version. Something like Release notes for 2.2.18 by Alan Cox [linux.org.uk] is a step in the right direction, but some of it is even a little too technical. For example, in the above document, set_current_state

* Fixed potential SMP race

means little to me and probably a lot of other people. Under what condition does this occur? The question why should I care about this change? should be answered for each entry.

How do you feel about doing something like this?

MT: I agree on that the changelog is "not for end users."

As I've seen several requests, I'll try to do more extended changelogs.

However, please note that right now I'm giving higher priority to fixing problems than to writing extended changelogs.

2) diary
by Lennie

Do you have a diary, like Alan Cox we can read?

Because we all like to know, if you'll actually be doing what your gonna promise now :)

MT: No I don't, sorry...

3) Kernel growth -- is it a problem?
by connorbd

While I am a passionate Linux supporter, I have also come to the conclusion that kernel bloat is likely to be a major issue fairly soon. It appears to have been the case for some time that =486 systems Need Not Apply, and Red Hat in particular has become a rather memory-hungry distro (it won't even install on my 16MB Pentium system, though I doubt this is really a kernel issue). The end result is that Linux seems slowly to be growing out of the lower-end used-server-in-a-closet market that helped it get so big in the first place.

My question: I presume kernel bloat, both in terms of code size and resource demands, can impact heavily on maintainability. Do you see this as a significant issue for the future, how much of a problem is it, and is it something that can be easily addressed without tearing apart the code base and reorganizing it from the ground up?

MT: Core kernel bloat is a _very_ bad problem. However, I'm pretty confident Linus is not going to allow that on 2.5, though.

About more drivers/fses being added to the kernel, well, thats a bad problem for maintenance.

All we can do about it is to make sure all accepted code to the kernel is clean, simple, and well designed to make maintenance easier later...

4) code control
by brer_rabbit

Have you thought about putting your changes under some sort of version control software? If you started putting the kernel/patches under CVS, maybe the rest of the kernel crowd would follow.

MT: I'm releasing pre patches now pretty often. However, I could export my local CVS, yes.

I might do that in the future.

5) Any plans to improve documenting the kernel?
by Carnage4Life

Currently the Linux kernel is filled with functions that are either poorly documented or completely undocumented. One of the purported benefits of Free Software is that many developers can jump in and help yet when you have functions like __free_pages_ok [linux.no] in page_alloc.c that are important, complex yet the only comment is:

"Buddy system. Hairy. You really aren't expected to understand this."

Doesn't this somehow defeat the point of the source being available in the first place? Basically the question I have to ask is this, "I have flirted with the thought of sending comment only patches to the kernel to further help people understand certain subtleties (e.g. why the pprev and next pointers in user_struct are not what they seem) in the source code especially CS students who are learning about the kernel in operating systems classes. If someone were to start such a program would such patches be accepted into the kernel?

MT: Yes, I would accept such patches as long as I agree with the documentation _and_ as long as I have time to read all patches :)

6) A pretty generic question
by archen

How do you view Linux in the scheme of things? Mainly where do you think the niche of Linux is now, and where will it be years from now. How do you view the direction Linux tends to be taking compared to other OS's (Windows XP, FreeBSD, etc) - ["direction" is up to what ever you personally interpret it to be BTW]

MT: Linux has a lot of "niches": the embedded market, the home users market, the enterprise market: Handling all of those "niches" in the best possible way is a very nice challenge.

I don't see any "direction" to Linux, though: It can work well on several niches.

7) Why you?
by CmdrPinkTaco

This is not intended as a flame or a troll, more of an interview style question. I figure since we are the people who are putting our trust in this person to handle *our* kernel, that this should also be our chance to learn about the person responsible.

What makes you think that you can handle maintaining the Linux Kernel? What qualifications do you have and why should we (the people) trust you with the Linux kernel.

I realize that this is actually two questions, but they more or less go together in one answer.

MT: I think they chose me because I can deal with different people without ego fights. I usually avoid conflicts and instead I try to solve problems.

About qualifications: I've been working at Conectiva for some time (4 years) as a software developer. I'm working together with technical support, which makes me have an idea of usual end users problems/needs.

8) Patches
by return 42

Linus likes very small patches, everything broken down into little chunks of functionality. Alan is ok with bigger patches. What do you like and dislike in the patches people send you?

MT: I prefer patches which touch specific things only: what I really hate are patches which touch several kernel parts.

9) CML2, cvs, kdb, crypto and more
by iamsure

If during the course of your maintainership CML2 proves very successful (as I beleive it already has) would you consider using it instead of CML1?

Also, would you consider moving crypto into the main tree in the near future? Debian has, Redhat will "soon" ...

Would you consider using bitkeeper, cvs, or even complete changelogs with proper attribution of WHICH merges took place?

And finally, would you consider FINALLY bringing kdb into the main kernel? Linus doesnt want it, but he doesnt want it because he doesnt see the value. He didnt say he banned it ...

MT: About CML: Sure, I may consider including it in the future. Not now, though.

About crypto: I want to be out of legal problems. Sorry.

kdb: Maybe. Not now, though.

10) Alan Cox and politics
by melquiades

Alan Cox's stand on the changelog is clearly not only a matter of personal protection, but a political statement. He has chosen an issue that is tremendously important to Linux, free software, and software developers everywhere, and certainly it's right for him to be pursuing it.

But is the Linux kernel the right forum for politics? Do you feel that it's a bad idea to involve the kernel in politics -- a slippery slope in which the software itself becomes a political pawn? Or would you say that the kernel -- and all software -- has already become a political pawn, and Cox's actions are entirely justified given that free software's existence is under increasing threat?

MT: I'll try to avoid involving the kernel in political questions.

11) Sound drivers
by BlowCat

The sound drivers are very poorly written. A lot of code is duplicated. Not all drivers support some ioctls. Every driver has its peculiarities, e.g. some drivers reset dsp to mono, 8bit on DSP_RESET, some don't. Some support /dev/audio, some don't.

Not having ALSA in 2.4.x means no good sound support in the stable kernel for another year of two. Do you plan to integrate ALSA into the 2.4 branch? If yes, will it happen after it's done on the 2.5 branch?

MT: I do not plan to integrate ALSA on 2.4.x.

12) How do you plan to handle the big companies?
by hansendc

As all of us know, many large companies are putting large amounts of resources toward Linux. 2.4 will continue to be important to these companies because it is the version currently being shipped with the distributions, and will continue to be shipped for at east a year or two.

How are you going to deal with the submissions from people like IBM and SGI who are going to want to make significant changes to 2.4?

MT: If their changes are non intrusive and I agree with the way they are coded, sure I'll apply them. Why not?

13) Stability vs Features
by azaroth42

How do you intend to decide which new patches should be added to 2.4, the stable tree, and which are not to be included as being more appropriate to just 2.5, the unstable development tree? For example, do new or updated device drivers rank more highly than VM updates?

MT: I'm really trying to avoid new features which are intrusive: Those ones are for 2.5.

New features which are non intrusive are OK.

14) Threads
by Exmet Paff Daxx

What are your thoughts about threads? Specifically, do you support Linus's "Context of Execution" generality with clone() or are you going to focus more on plain POSIX pthreads compliance?

Any chance of Alan Cox's multi-threaded post-mortem debugging patch which dumps multiple core files for each lightweight process (LWP) making it into the kernel? How about support for post mortem debugging of multithreaded core files in general (right now there is zero support).

Any rants about threading as a general topic would work.

MT: I do support Linus's "Context of Execution" idea, yes.

About Alan's multi-threaded post-mortem debugging patch: I haven't read it yet. But I might apply it.

15) Age a question?
by debrain

If what I've read is correct, you are the youngest maintainer for this kernel. Do you have any feelings on a social level, regarding much of the peer review and critism will come from people who are older? (and very possibly set in their ways, and potentially intimidating)

MT: I don't have any feelings wrt age. I just hope that older people don't take that into account.

16) Expectations
by MikeBabcock

In the time you've been aware of or been using Linux, how have your expectations for what it ought to be or eventually become changed? I know in the time I've used it I'd never expected it, for example, to become a desktop OS but rather a good server or embedded product. What did you expect when you first started with Linux, and what do you expect now?

MT: I expected it to be a server system when I started using it.

Now I expect it to be a Unix system which can work in a lot of different environments. :)

17) Hit by a bus
by moonboy

I'd hate to stray from the status quo where standard interview questions are concerned, so in keeping with it, I ask:

What's it like knowing that, if (God forbid) Linus and Alan were hit by a bus, you might be "The Man"?

Hey, someone had to ask.

MT: I don't know, dude.

18) Re:Do you use a distribution?
by bfree

To rewrite the above question the way I'd like it asked:

What operating systems and platforms do you personally use and which ones do you also use (and why)?

MT: I use Linux for work and sometimes I use Windows to play games.

Do you run a common environment on all your machines (in as far as possible) or do you run different things in different places and which environments do you prefer for what?

MT: I do run Linux on all of my machines. I like to take a look at other OSes when I have time...

What development tools do you use (especially for the kernel), would you do anything differebtly for the kernel (like make it compile with other compilers) if you could (or will you) and would you like to (or will you) place the Linux stable kernel into CVS or another version control system?

MT: I use vi for editting source code and gcc to compile the kernel. :)

No, I'm not going to put the kernel in any kind of version control system because I have to know what goes into the kernel.

One thing which I'm going to do, and which matters, is the use of STP in each -pre release of the kernel.

I hope the SGI guys can get STP stable and working well soon.

Do you feel any personal preferences for anything might actually be in anyway reflected in your work as the stable kernel maintainer?

MT: No.

Do you have a good lawyer?

MT: No. Actually, I don't have a lawyer at all and I hope I'll never have to use one on Linux related issues.

Are you planing on travelling to the U.S.A.> (for all I know you live there, excuse my ignorance:-)? [Note: Marcelo lives in Brazil.]

MT: No. I may go to some congress, though. Not sure yet, though.

Have you experience dealing with politicians, business leaders and large groups and do you see this as a part of your job description? MT: I do not have experience dealing with politicians, business leaders or large groups. I see that as part of my job description, yes. I hope I can learn that with time...

When you stop maintaing the stable kernel, what would you like people to be saying about your reign?

MT: That it works well. ;)

13 of 287 comments (clear)

  1. Short and to the point answers? by Squeezer · · Score: 1, Interesting

    Not trying to flame or troll, but is it just me, or are his answers short and to the point, unline a lot of other Slashdot interviews where the interviewer would give a paragraph or two answer on every question?

    --
    Does the name Pavlov ring a bell?
    1. Re:Short and to the point answers? by Anonymous Coward · · Score: 5, Interesting

      Take a break, he's 18 and English is his second language.

  2. Code style? by Pyrosz · · Score: 4, Interesting

    How are you going to deal with the submissions from people like IBM and SGI who are going to want to make significant changes to 2.4?

    MT: If their changes are non intrusive and I agree with the way they are coded, sure I'll apply them. Why not?


    Whats he mean by "... and I agree with the way they are coded"? If it works and has nothing bad in it, why would he reject it?

    --

    An optimist believes we live in the best world possible; a pessimist fears this is true.
  3. I don't care what kernel people eat for breakfast. by Anonymous Coward · · Score: 1, Interesting

    I just want a working, stable kernel.

    For some reason, though, I like this guy.

    Maybe it's because of his short and to the point answers. :) After hearing 'fluff' from both commercial and non-commercial developers for so long, it's nice to hear a one-sentence answer that doesn't leave one puzzled.

  4. Wonder when he'll change his mind? by WillSeattle · · Score: 2, Interesting

    What operating systems and platforms do you personally use and which ones do you also use (and why)?

    MT: I use Linux for work and sometimes I use Windows to play games.


    Man, sounds kind of like why I still have the Win box at home - to play games. I'm wondering if/when he'll finally decide to switch - I'm expecting to dump my last Win box when I get the Mandrake 8.1 with The Sims bundle (WINE plus DirectX support).

    I know that people believe we should all play Linux games, but the reality is that most of us still have Windows cause of the games. We don't really care why we can finally get rid of it, but we need something workable.

    -

    --
    --- Will in Seattle - What are you doing to fight the War?
  5. Re:Priorities... by CoolVibe · · Score: 5, Interesting
    Not really... The real 'heel' is the tedious/irritating work that needs to be done. Documentating stuff is irritating and tedious and thus is a part of that problem. It is not *the* heel, but one of the heels :-).

    One thing is writing user manuals, which is something that can be done by non-developers and is much easier solved But documentating APIs and code is something that needs to be done by developers, who rather spend time writing working code than writing up to date docs. Somehow the documentation process always gets the lowest priority.

    If you were developing in your free time, what would you rather do? Write code or write docs? I guess you know the answer :-) Guess what gets done last (or when there's some time to waste)?

    Same btw, goes for code reviews and bugfixing of lower priority bugs (bugs which are kind of irritating but not critical).

  6. Kernel changelogs by cr@ckwhore · · Score: 4, Interesting

    I really like the idea of better changelogs explaining fixes and problems to the "end users". Granted, the "end users" compiling their own kernels are generally not typical computer users... some changelog lines are easy to understand while others aren't. The understanding is based solely on the users knowledge of the inner workings of the system.

    I don't necessarily think that end user style changelogs should be of much concern to core kernel developers. Obviously, they should be concentrating on fixing problems. However, I have an idea that should make everybody happy...

    A group of kernel savvy & knowledgeable systems experts should get together and form an open changelog review project. This project could work alongside the core kernel team for the sole purpose of documenting kernel changes, answering the questions of why, where, how, etc.

    This would achieve great kernel documentation, and avoid putting that added stress on the kernel team. Thoughts?

    --
    Skiers and Riders -- http://www.snowjournal.com
  7. Re:Kernel bloat is inevitable. (i.e.: Stop whining by RelliK · · Score: 3, Interesting

    I'm running Linux on my 486 which I bought in 95. It serves just fine as a firewall, proxy server and a small scale mail/web/ftp server.

    I have not noticed *any* kernel bloat (and I've been running Linux for a loooong time). All the bloat is in the apps (especially the GUI gizmos). I'm surprised this question was even asked (but then again this is slashdot...)

    --
    ___
    If you think big enough, you'll never have to do it.
  8. documentation by applejacks · · Score: 5, Interesting

    Remember back in college when the professors took off points for lack of documentation. Comments from them usually include something as, "Sure you know how it works, but what about me." It was the first commandment of programming. So I think it should be one of the first changes to be made by commiters and developers posting patches. That includes all mighty Cox and Tourvalds taking some time to document some routine functions in the source code tree. There is some commenting that is relevant and some that has no purpose being there at all. BSD people should hush up too. They are just as bad. Yeah I know I should be willing to sit down with a pepsi and read through yards and yards of code. I shouldn't have too. I should be able to get an idea of the logic behind a fuction from your documentation. grade 60% you fail, repeat the class....

  9. Re:Interview suggestion... by FortKnox · · Score: 2, Interesting

    Since then, slashdot has seen the fall of the dot-com, and the VA/OSDN changes.

    Another thing, in response to
    Truth is, most of the editors seem to have gotten completely bored with the site but for whatever reasons feel compelled to keep plugging on. They've long since given up caring about it and seem mystified that any of the readers would care either.

    Its ok to get bored with (hobby) projects, but, god, they get paid to run this site! Its not a hobby they can just get bored with, if they don't like it change jobs and let someone else run the site!

    BTW - on Katz's interview, "Preaching to a Choir" question, in his response he says:
    So I stay here because Im happy, stimulated and welcome
    I'm surprised the trolls never hit that...

    --
    Good quote, too many chars. Seriously, the slashdot 120 char limit sucks!
  10. Re:Priorities... by zerocool^ · · Score: 5, Interesting

    Poor/Incomplete/Out of date documentation is the Achilles Heel of open source.

    I would have to disagree with this. While poor documentation does hurt one open source project against another, actual help files, FAQ's, and newbie files are rampant in linux - from a broad base I think mandrake 8.1 is better documented than windows. As to specific documentation in the kernel etc, yeah, its poorly documented, but you're missing 2 important points - one: its poorly documented across the board, and two: when's the last time you saw the documentation in kernel32.dll for windows? ANY documenting is better than none. The fact that we can see the source in and of itsself makes it superior to anything non-open.

    ~z

    --
    sig?
  11. Alsa? by Kagato · · Score: 4, Interesting

    What's the deal with Alsa? I mean Suse has been behind it for quite some time now. The code seems fairly mature these days. People have been talking about merging it into the Kernal for years. What's the deal? Has OSS really jumped ahead recently in features, or does Alsa have a lot of bugs we don't know about?

  12. Re:Kernel bloat is inevitable. (i.e.: Stop whining by uhmmmm · · Score: 2, Interesting
    Unlike Win98, which just went unsupported and realistically unavailable

    no, that was win95 that went unsupported. IIRC, win98 won't go unsupported 'till 2003.