Older blog entries for crackmonkey (starting at number 23)

Just chillin' with advodiary. I've been catching up on jdub's diary entries, as well as raph's.

Behold GAR, the ports collection for GNU systems.

Some beginning documentation here.

Latest CVS for you all.

Not everything is packaged yet, by any stretch of the imagination, but the system does work. Drop on by our mailing lists and help out.

19 Apr 2001 (updated 20 Apr 2001 at 00:04 UTC) »
welcome datacomp

Some folks on badvogato pointed out that one can use stylesheet info inside the allowed tags to do colors and such.

Just wondering if that's possible here, as well. I especially like the "cite" style of blockquote. Heh, hope I haven't started a horrible meme here. It's all but taking over badvogato posts.

Well, I must say that I learned a good lesson while setting up Badvogato: when playing with modules, don't do /etc/init.d/apache reload! It turns out (supposedly) that this was what lead to my memory leak problems. I was frustrated with the lag involved in doing a restart, and would edit, make, and reload in a rather swift cycle.

So, it would appear that the proper thing to do would be to make sure that apache totally surrenders core and then begins afresh, as it's tough to swap out all kerbillion apache processes when they gobble up all your RAM. I'm considering looking into a PAM rss limitation or something to keep any one user from getting more than 90% of core.

Blah, so in a few hours someone will probably reboot the badvogato box, and it'll be up and running smoothly.

Oh yes, and I only just got the "virgule" joke. In French, "virgule" is the word for "/". mod_virgule:advogato::slashcode:slashdot

23 Jan 2001 (updated 23 Jan 2001 at 03:20 UTC) »

I have moved on from advogato, and am now working on Badvogato, instead. I wish you all well.

Update: Well, it looks like a runaway apache process has eaten up badvogato's system resources, so it'll be several hours before I can get it back up again. Fuq.

Well, it has been quite a while since I made an entry in here. Last night was CrackMonkey Night at Zeitgeist (a great old biker bar in the Mission neighborhood that is now a haven for bicycle couriers). rachel showed up, and we managed to summon both Kurt Kobain and The Tamale Lady, though we failed to summon any tamales themselves.

Rachel hit on the bright idea that we should use some of the artist gallery spaces to hold CABAL-style meetings and installfests. San Francisco may have a proper user community space after all!

I'm actually typing this in using mozilla M17, which is frustrating, as I'm used to lynx, which allows me to launch $EDITOR in any multi-line text input widget. This little box is not particularly friendly.

It was good to finally meet Raph at the Printing Summit a couple weeks ago. I learned more about what you can do with multiple alpha channels than I would have thought necessary. Color management is hard!

Seth just found a bug in nwall the other night. It turns out that the ttymsg code I used was written under the assumption that the process using it would exit quickly, letting the fork()ed I/O processes get cleaned up by init.

That means there was no wait() anywhere! Since the ttymsg() function used by wall, write, and talkd forks off a child whenever writing to a tty would block, it was creating a zombie process every time we typed in a line! These zombies built up to the point where nobody could fork off any new processes. Exiting nwall orphaned them, letting init do a collossal clean-up job.

Seth suggested that I use wait3 or wait4, but I wanted to be all warm and fuzzy and POSIX-compliant, so I suggested waitpid(). Seth came up with the call before I could, so the ttymsg code in nwall now contains while(waitpid(0, NULL, WNOHANG)) ; in the parent section.

Of course, the thing I don't understand is why this was never caught, since the write program could potentially suffer the same problem.

14 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!