"I'd like to keep linux simple even at the cost of some speed hit, as otherwise it grows until nobody really understands it."
"If I /agree/ to add it to linux? If anybody implements paging, he's going to get 2 extra copies of linux for free. How's that for an offer?"
Ingo Molnar sent a merge request to Linus Torvalds for the latest CFS fixes. CFS, the Completely Fair Scheduler, was merged into the mainline Linux kernel in July of 2007. It was first included in the 2.6.23 kernel, released in October of 2007. The scheduler appears to be quickly stabilizing, visible in the minimal assortment of fixes contained in the latest source code push. Ingo Molnar summarized the changes:
"There are two cross-subsystem groups of fixes: three commits that resolve a KVM build fix on !SMP - acked by Avi to go in via the scheduler git tree because it changes a central include file. The other one is a powerpc CPU time accounting regression fix from Paul Mackerras.
"The remaining 14 commits: one crash fix (only triggerable via the new control-groups filesystem), a delay-accounting regression fix, two performance regression fixes, a latency fix, two small scheduling-behavior regression fixes and seven cleanups."
"I'd like to know if the floppy-driver works for 2 (or more) drives? Nobody has commented on that yet. Do a sync before you try it though (just in case...)."
"Well, it seems people are starting to get some things working, and my mailbox has certainly been busy."
"Yeah, don't remind me - it's late," began Linus Torvalds, announcing the second 2.6.24 release candidate, "there was nothing in particular holding this thing up, I just basically just forgot to cut a -rc2 release last week." He went on to list some of the changes:
"There's not a lot of hugely exciting stuff here. Some arch updates: MIPS, arm, blackfin, x86, sparc, sh, s390.. Also various driver updates: libata, IDE, networking, DVB.. And some more fallout from the scatter-gather changes. Some scheduler cleanups, and also fixing the CPU usage statistics that got scrogged at some point."
Linus noted that while there were no major changes, the shortlog was still too large to post to the list. He suggested using the command
git shortlog v2.6.24-rc1 to see all changes since the last release candidate, "but quite frankly, it's no Leo Tolstoy. If you have trouble falling asleep, you might try to print it out and take it to bed with you: it's not going to be more than just a couple of pages ('use 2nup and save a tree'), but I dare you to actually get to the end. Snooze city."
An earlier discussion about GCC compiler misoptimizations led Linus Torvalds to note, "I'm very ambivalent about gcc." He explained that on one hand he feels it's a great compiler with many great developers, but being an old project, "it has accumulated cruft over time, and cleaning things up is often almost impossible." He added that while compiler bugs can be frustrating, his real concern with the project remains in how some of the developers enforce language definition, "and seem to think that it's more important to read the language spec like a lawyer than it is to solve actual user problems."
Andrew Haley noted that there is an active group of developers trying to improve GCC, requesting, "give us a chance." Returning to the original compiler misoptimization that started the whole discussion, he noted that a fix was being committed to all open GCC branches, "we're back-porting the patch to all open branches. However, this patch only affects one particular case where gcc introduces a data race; we're sure there are others not fixed." Andrew also noted that they were actively continuing to audit the code to find and remove similar optimization bugs.
"This month yet another milestone was reached: note the 'Recent traffic' fields (both in kilobytes and number of messages): c.o.linux is actually more active than alt.sex according to newsstat."
"Rule #1 in kernel programming: don't *ever* think that things actually work the way they are documented to work. The documentation is a starting point, nothing else."
Paul Mackerras merged an updated version of
gitk into his master branch. Gitk is a git repository browser. New features include improve searching, "thus you can now search for commits that modify certain files or directories, or commits that add/remove a given string, as well as searching for commits by commit message, author, committer or headline." Paul also noted two performance improvements, "gitk now uses a new graph layout algorithm, which means it doesn't have to generate the whole layout from top to bottom at startup time, making startup faster," and, "gitk caches the topology information used for the previous/next tag and branch information, making startup faster."
Linus Torvalds noted some display annoyances, but responded favorably to the performance improvements, "*huge* improvements. It is now really nice to start up gitk even on the full kernel history." He made some suggestions for additional improvements, then added, "but this has both the layout performance improvements and the fixes to only show selected files in the diff view by default, so I hope this gets merged into standard git soon.."
"I'd like to get rid of some of the glass, and replace it with padding. Because you all know we'd all fit better in a padded room than a glass house.."
"Quite frankly, at least for me personally, what I would rather have [...] is a less rigid maintainership structure," Linus Torvalds proposed. He went on to explain, "let's face it, we are *all* likely to be overworked at different times, and even when not overworked, it's just the fact that people need to take a breather etc. And there is seldom - if ever - a very strong argument for having one person per subsystem." He noted that
git is an excellent tool for spreading out maintenance, then added, "but even without something like that, I think it's much better to try to find people you can trust, rather than strict maintainership boundaries." Linus continued:
"I've personally always been against _strict_ maintainer lines, so I've always taken stuff 'past' the maintainer anyway (and sometimes maintainers have complained, because they feel like they 'own' their subsystem, and I either tell them to stuff it, or say 'my bad', depending on whether they had a valid _technical_ complaint or not)."
"So basically, we're spending several seconds just doing stupid make-believe work and moving the index array around. Ouch."
"Standards are just papers. Yes, they're important, but they are definitely not more important than anything else, and they are a lot _less_ important than some people seem to think."
"... as you probably all have noticed. I've been up all night writing this report for the 'CS Course from Hell' (*), and haven't had time to play with linux. I'll get it done tonight if I can keep awake that long."