Ask New 2.4 Maintainer Marcelo Tosatti Anything
Linus keeps hinting (declaring, even) that he's nearly ready to work full-time on the 2.5 development branch of his kernel, and hand the 2.4 kernel off to Marcelo Tosatti. Marcelo's graciously agreeed to answer questions (you might want to read some of his mailing list contributions first), so here's your chance to ask him what he'll do in the famous footsteps of Linus and Alan Cox, and how he got there. Please only put one question per post; we'll pass along the top-rated comments to Marcelo for his answers, and hear back from him shortly.
For those of us not part of the kernel community, can you give us an overview of your background and past work done in the Linux world?
How much do you expect to be backported from 2.5? Obviously there's a lot of stuff people are interested in putting in the kernel, but should probably refine in a development kernel first (e.g. XFS, JFS, preemption, lowlatency, etc.)
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.
Co-founder and designer at Music Nearby: http://musicnearby.com
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?
- Michael T. Babcock (Yes, I blog)
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)
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.
If guns kill people, then CmdrTaco's keyboard misspells words.
For example, do new or updated device drivers rank more highly than VM updates?
-- Azaroth
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 least 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?
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?
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?
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..
GPL'd web-based tradewars themed space game
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?
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.
Please give your mod points to others, Im at the cap. They will appreciate it more
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]
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?
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.
Who would win in a fight? You, Alan Cox, or Linus?
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?
/Brian
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
New things are always on the horizon
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 is a step in the right direction, but some of it is even a little too technical. For example, in the above document,
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?
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)?
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?
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?
Do you feel any personal preferences for anything might actually be in anyway reflected in your work as the stable kernel maintainer?
Do you have a good lawyer? Are you planing on travelling to the U.S.A. (for all I know you live there, excuse my ignorance:-)? Have you experience dealing with politicians, business leaders and large groups and do you see this as a part of your job description?
When you stop maintaing the stable kernel, what would you like people to be saying about your reign?
Linux or BSD
Never underestimate the dark side of the Source