Older blog entries for movement (starting at number 41)

Is anybody else tired of the politic crap on recentlog ? I'll be sure to complain about the domestic issues of some country I don't even live in. Frankly, I would much rather hear about Telescope making or the insides of clouds. The filtering of the reactionary nutzos has helped, but we still have to endure the other side of the coin. There are more relevant fora, surely [1].

The OProfile 2.5 patch is pretty much ready now, which is lucky, given the recent removal of sys_call_table.

[1] Responses along of the lines of "But these issues are important, how can you bury your head in the sand !?!" etc. will be derided and forced to undergo drunken initiation ceremonies in premises devoted to unlicensed gambling

Posted a very early 2.5 OProfile patch to lkml and immediately got larted by akpm for not having added useful comments yet. Busy fixing that.

It's all true by the way - jazz for trousers is nice.

The oprofile 2.5 patch is settling down now. The code is mostly written; I'm waiting on graydon's cpu model patch so I can steal it, and then after some tidies I'll probably post a patch to linux-kernel, to the deafening scream of millions, no doubt.

I do not know what I would have done without serial console and the NMI oopser. It's a godsend.

Btw, please certify the other oprofile lead developer phe, who's just joined.

I got 0/10 on the music round of the local pub quiz. I am so ashamed. It was so bad the quizmaster pretended we got 1/10.

Stupid 60s. It was a sucky decade anyway (after all, I didn't exist then).

tromey : Your build tool is sounding increasingly interesting.

More importantly though, you're a fan of What's Up Doc ?. This film is fantastic stuff, especially the court scene near the end. Worryingly enough, that's not the only Streisand thing I like: Woman In Love is a great song.

Further evidence for concern: I was listening to the Top 40, and somehow mentally described The Tweenie's new song to myself as a "prime slice of disco funk" before I could catch myself. I should seek help.

Lots of action in the OProfile camp. graydon sent a preliminary patch for Pentium IV support, which looks good. There's also David Smith's stack profiling patch, and the IA-64 and x86-64 ports hanging around. Meanwhile my 2.5 patch seems to be (slooowly) getting somewhere.

bgeiger : The best reason that Mozilla will never have alt tooltips is simply because continuing to encourage alt tooltips is positively harmful to accessibility. We can be thankful that many government sites are starting to get serious about accessibility requrements now; with any luck it will raise awareness of some of the issues. Many people are surprised to hear that almost all alt texts out there should actually read alt="". Somebody with a really good grasp of this stuff is Ian Hixie of Mozilla, who also has an interesting blog.

The shocking thing about that "bug" is that people see 158 comments and still think that comments like "blah blah blah blah blah" are going to be read !

Bram, do I really need to give a case for unlink(2) to return EEXIST when the link is identical ? It seems patently obvious to me that if an application is trying to make an identical link that already exists, something is wrong. That is : an incorrect assumption about the state of the system, or a program bug. Either way I definitely want to know about it.

The Importance of Being Earnest : Am I the only one really pissed off that they got Dame Bloody Judi Dench to play Lady Bracknell ? As if !

12 Sep 2002 (updated 12 Sep 2002 at 12:31 UTC) »
janschrage: Your attitude reminds me of those musicians using the hackneyed old line "We just make music for ourselves, if anyone else likes it, that's a bonus" :)

Garbage collection

The first thing you learn about garbage collection is that is fiendishly difficult to derive any useful analyses. Every system ends up being so workload-dependent that it becomes practically impossible to round out any design guidelines ("it's the cache, stupid" is still pretty much as far as the field has got). Every system has a worst case, and these worst cases have a nasty tendency to actually occur in real systems.

Richard Jones' book is an excellent introduction, although perhaps a little dated now. For example, there is little discussion of latency issues in threaded systems, which is where the "stop the world" approach has its major failing. Whilst the problem shares some characteristics with the distributed GC, discussed in a chapter by Lins in the book, it is also a distinct scenario.

Unfortunately the general awareness of GC issues is drastically poor. People associate garbage collection with poor performance and focus on just one aspect of its runtime performance, brushing over the fact that the issues are nowhere near that clear-cut (Linus is certainly correct that cache misses due to lazy allocation can be a problem; however it is not the single defining characteristic of garbage collection's runtime behaviour - there are a lot more factors, both negative and positive, on how a runtime GC system behaves).

Worse, this sort of attitude is still prevalent, which misses the point so badly I don't know where to start refuting it. This sounds like the same reasoning that led somebody to ask how to write a KDE application in assembly to me. jwz says it rather succinctly I think : " Most of the time, throwing memory and CPU at the problem is still cheaper than throwing programmer time at the problem, even when you multiply the CPUs/memory by the number of users". It bears thinking about.

I think inevitably we will see a part-hardware solution to the GC problem; what form it might take, I don't know ;)

Addendum: I wish Advogato wouldn't replace diary entries in recent log. Its notion of when a day begins and ends does not tally with mine ...

Finally got sick of the old mess and re-wrote the Qt autoconfiscation I use in LyX and oprofile. Now I dumped all the KDE-1 derived "second guess the user" crap, it's much simpler and hopefully far more robust, even when dealing with bogosities like systems where the library is -lqt2 (derr). The LyX Qt port is picking up its pace a little bit now.

Bram, I must confess to being a little bemused by your tirade against link(2). Your suggested improvement smacks of policy to me. I can think of numerous scenarios where losing the ability to recover the information EEXIST gives you would be a major PITA. In contrast, if you want the idempotency you suggest, it's a 3-second job to make a wrapper. link(2) may not be that great (lying on NFS) but what you describe is definitely not a flaw.

Working some more on the oprofile 2.5 patch. Slow going but hopefully I'll be able to come up with something worthy, and eventually drop all the horrible dreck in the module.

Speaking of which, Red Hat have decided that it is vital for them to remove the export of sys_call_table. Which means the ia64 users are going to have to compile up their own kernels since apparently oprofile is only going to be in the Red Hat kernel on x86. Ah well.

chakie: QSocketNotifier is working fine on UNIX, but I have to keep an eye on our nascent Windows port too (oh, and the behaviour you mention is entirely undocumented, and thus, cannot be relied upon even on UNIX).

And the mailing list has been worse than useless; most of my reports/questions are simply ignored. The list is filled with people learning how to build shared libraries, learning C++, etc :

Subject: Conversion Tool .ui -> .bmp ?
Subject: does QFileDialog work ???

Eventually I will take the time to make simple test cases for each of these problems, but it requires me to build latest Qt version to double check they still exist (and I do not have the diskspace), and it's very time-consuming. In the meantime, I'm having to fire-fight these problems, instead of doing some real hacking :(

32 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!