User: Password:
Subscribe / Log in / New account

Quotes of the week

Stress testing is rarely useful here - things like ioctl races you find by thinking evil thoughts.
-- Alan Cox

The greatest problem, as I see it is that by pouring vitriol like this on newbies, we're really damaging our reputation as a community that welcomes newcomers and strangling our necessary supply of willing volunteers. On the other hand, as a maintainer, when there's people yelling me at about patches not being included plus a persistent regressions list and about ten bug reports to track down, the last thing I want to see within a million miles of my inbox is a white space fixing patch. The more of these patches we get, the worse the problem becomes and the shorter and more inflammatory the responses get. We can't go on like this.
-- James Bottomley

The #1 project for all kernel beginners should surely be "make sure that the kernel runs perfectly at all times on all machines which you can lay your hands on". Usually the way to do this is to work with others on getting things fixed up (this can require persistence!) but that's fine - it's a part of kernel development.
-- Andrew Morton
(Log in to post comments)

Quotes of the week

Posted May 29, 2008 20:22 UTC (Thu) by MisterIO (guest, #36192) [Link]

I disagree with what Morton said, fixing bugs usually needs a deep knowledge of the software
you're trying to fix. That's not what the newbie kernel hacker should try as a first step.
First steps are always exercises, like start to program a little kernel module, then write one
more complex and so on.

Quotes of the week

Posted May 29, 2008 20:49 UTC (Thu) by AJWM (guest, #15888) [Link]

Nothing gives you deep knowledge of software like trying to fix a bug in it, although
admittedly the initial learning curve is steep.  Certainly introductory exercises such as you
suggest are a necessary start, but (to use yet another car analogy) learning to change a tire
doesn't make you an auto mechanic.

Quotes of the week

Posted May 30, 2008 15:35 UTC (Fri) by MisterIO (guest, #36192) [Link]

Not to further discuss this topic, which more or less is clear, but I just noticed that your
analogy is somewhat strange. Actually "learning to change a tire" is much more similar to
fixing bugs in software, than to making focused exercises.

Quotes of the week

Posted Jun 9, 2008 2:43 UTC (Mon) by efexis (guest, #26355) [Link]

Not necessarily, if you're good at logical problem finding (or just plain lucky). I've done a
fair amount, granted not in the kernel, but definitely in complex tangled software that I've
previously looked into even less than kernel stuff. Being able to find ways of narrowing down
where the problem most likely lies is often a good enough start. Unplug all but most essential
hardware, compile out all but most essential features, does that fix? Add half back... you
don't need to understand how it could be in the half you're adding as opposed to the half
still out, but it narrows down where it's likely to be. Of course, and knowledge you have have
increases your chances of picking the right systems to remove/add first.

Of course this example wouldn't get you far on its own, and is highly dependent on the type of
problem, but as you start working your way in, learn little bits about where you're looking,
and find what you have to do to look closer. Even if once found, you don't have a clue how to
fix, being able to give this clear information to someone who /does/ understand it can often
yield a pretty quick "ah I know".

So yes I guess I think greater fundamental knowledge for newbs would be more productive than
great understanding of deep internals with less knowledge of how to find where you need to be

Quotes of the week

Posted Jun 3, 2008 21:23 UTC (Tue) by dmag (guest, #17775) [Link]

I agree with Morton.

If you have a specific problem, you dig to the level of detail to solve the problem. You'll
need deep understanding of C and pointers and such. But most of the time, you only need to
learn a few kernel subsystems to fix the problem.

The alternative is to try and "learn" the kernel top-down. But you don't learn anything in
enough detail to be useful, so people resort to useless patches.

Quotes of the week

Posted Jun 3, 2008 16:43 UTC (Tue) by Baylink (guest, #755) [Link]

WRT Andrew Morton's comment -- which I agree with, BTW -- is there a formal regression test
suite which can be used to determine this?

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