Older blog entries for jmm (starting at number 8)

Trace tool is working again... got SpecWeb traces for single and dual processor setups (marketing seems to care about those) in the bag. Currently working on rewiting the controlling software to do a primitive raid0 across 2 diff ramdrives... should be a hoot

Painfully little done on the IS since everything's been so crazy with tracing (PCI cards that don't behave, some cards that don't even show up, random kernel problems, etc). It's going to be very hard to rationalize a lan party over the weekend when I'm so far behind in the IS work *sigh* I really oughta just get outta the PhD and come back later when I'm more motivated and have a decent topic in mind. We'll see.

I need to meet more people. I think one of my problems career-wise is that people don't meet me (I know, it's my own fault for getting too busy to make the Expo last year) and so I end up being a holed-up labrat stuck being overqualified for the crap that gets thrown at me... I know, stupid rant, but I really want to get out and get into more diverse positions... tracing has been fun and all, but at some point you realize your skill-learn-rate isn't what it used to be, and more importantly it isn't what it needs to be.

I really gotta figure out why 2.3.99-pre6 breaks the eepro100 on the 7000M10 machine... it's just bizarre that a driver so rock-solid for me in every other possible machine and configuration would start giving me problems now.

Back to tracing... Worse slavery than a code monkey.

LUG meeting went well... finally went to Rock-ola (and not the Rat) for dinner afterwards... still need to give Pam a hard time for not showing up (she's the LUG President after all... oh, wait, I forgot that means she should never show up!) It was interesting to see 4-5 LUG'ers not be able to get a presentation working sigh. After awhile, you'd think they'd try getting these things working before the meetings. What a waste.

So the trace tool is acting up again. Chase is finally agreeing that it's likely a colder solder somewhere after the FPGA. The 2V offset and weak peak-to-peak of the signal going into the ECL converter sure seemed to agree, so if we rip the board apart I'm soldering the crap out of those joints. A6 will have all of 1 milli-ohm resistance to go through once I'm done (and yes, I'm aware that's less than BGA :)

I gotta get some more stuff done on the IS.

Met with a financial advisor... Nice guy, but I haven't figured out if he's motivated to help me or plug his buddy the CFP... hmmm

Poor Hornets... maybe next year.

Vanguard is mailing out the forms and fund breakdowns (prospecti... ewww)... at least Kevin was willing to do an overlap report for me... that'll be nice to have around on days like today when my stock quotes page is all blood red... ugh

I need to learn more hands-on Oracle.... that's for sure... I've read about every book possible, but it's just not going to matter until I can get in and deal with large setups hands-on... soon, I hope.

Saw Frequency with Drew last night... pretty decent movie as it turns out... hit the Gypsy Diner (the shiny diner) afterwards and found out just how bad one side dish can be.. something called butterfly chips or something like that... totally nasty.

Got a response from Pat B. @ Corel giving a mini-patch to mc-4.5.40/vfs/util-alone.c to add a little function so podfuk will compile (it's a hackaround method, but it works). I still wonder why linker's aren't smart enough to pick out needed functions from objects (worst case, noop the other functions), although it'll be nice when (soon hopefully) the kernel has that capability, although it'll come at the cost of an ELF section for every single function.

Trish Hogan (TPC-C DB person) reports that Clarinet has never used 64-bit data. ServeRAID guys report (sigh) that the bottleneck is a SCSI layer one in the Linux kernel (amazing how I get faster with other controllers, though, eh?). Oh, well... at least s/w raid will let me distribute among PCI busses which is good since that's where the real bottleneck will be (esp. on the 64-bit and only 33MHz PCI bus 3 in the Netfinity 7000M10)

As I'm writing this, I'm waiting on a cable modem guy to come out and check my line and run it to an outlet. He will probably get here late, and I'm going to try and get this free since it's Time-Warner and all (and in the middle of their ABC dispute too :) and supposedly late means free for their service... we'll see.

mini-update: on the phone with Time-Warner and the first response was "we don't have a scheduled appointment with you today" What?!?!?!?! So I tell her to look around, that there's a strong likelihood that since I cancelled TW service before, a new and different account got created. Sure enough, she finds a second account but then reports "Well, the RR service entry was made, but it was never saved" then changes that to "It was made and saved, but no actual work order to install service was made" ARGH So now I'm waiting on the phone ... on hold having wasted my entire morning off of work, waiting for someone at TWC/RR to figure out whether or not I was supposed to get RR service today. (her name is Pam, BTW). Well, she reported back that it was scheduled, that my install would be free since they were late, and they're trying to track down where the tech is right now.

Calling in to Chase to update him about all this, he swears that it'll never happen today and I need to drop it and come into work to do some tracing. I don't wanna lose the cable modem possibility, so I'm not likely to do that :) Hopefully I can (worst-case, I hope) reschedule the install for a little later this week or something.

Ugh... finally got this settled (for the day). They rescheduled for next Monday (05/08) in the afternoon... I can't believe I wasted a morning on this crap.. bleah

AVFS indeed works standalone. coda loaded, /overlay dir made, and everything rocks. I don't really care about the redir.o kernel module hack to get the same functionality through the "native" trees, it just doesn't buy me that much.

The perl script to scan all files in a given tree and export the avfs-exported source dirs from them is written. Seems to work well, but it doesn't list the kernel numerically. I'm not sure I care since most ftp servers are going to go lexicographically too, but it'll be a quick and possibly useful hack. I might have a "last 5 of each tree" mode written in for those that don't want their rsyncd exporting a hundred diff dirs (although I don't see that it would matter, except in wasted cache space, but the coda cache manager should handle that anyway.

With rsyncd re-reading the conf file on each connection, I can get away w/o locking or doing other pseudo-atomic operations when maintaining the conf file... worst case one connection gets a broken conf (highly unlikely, but a minute race condition), but the retry will work fine. We're talking about a 10ms window once every few hours... Not likely :)


I get 5 huge paragraphs into today's diary entry and it all dies when I load the redir module and it kills the system. Argh.

Ok, so the secret to keep the thing from crashing the system and get it actually working wasn't that hard. The only trick was that his RH 6.0 binary rpm would make you tend to believe he had some support in the code for RH default setups. After "configure", simply edit src/redir/redir.c and #include linux/modversions.h (after module.h is a good location). Then edit src/redir/Makefile and add -DMODVERSIONS and -D__SMP__ (if needed) to the CPPFLAGS.

That should do it... rebuild, make install, etc..

Ok, so now trying to catch up on everything I had typed... I guess I'll have to be brief about it.

FIrst off, the ServeRAID 64-bit PCI controller still only uses 32-bit mode (proven by the bottleneck at 41 MB/sec over the PCI bus) even in a 64-bit PCI slot, but I'm going to upgrade the bios on the Netfinity 7000M10 in case it's a bug there. I've got 5 64-bit cards and only one crappy 64-bit/33MHz bus to put them on... distributing some to the 2 32-bit PCI busses will have to happen, but since the one input fiber card doesn't appear to support peer-to-peer PCI DMA (the ServeRAID cards probably don't either), then I'm stuck with all kinds of PCI bottlenecks in trying to get fast trace storage... ugh

I didn't get any Oracle studying done because Drew went out of town, so I'm stuck trying to read books for today.

Two more days until the cable modem, nine more days until the new dish and receivers so I can get local channels cheap.

It turns out that if you go back and edit a diary entry, it changes the date to the day you edited it. Sucks since all I did was add an href for Caroline Rhea on yesterday's entry once I found a little bio about her on ABC's site... ugh

I'm hoping to get AVFS working w/o the redir module... dependency on just fs/coda.o would be ideal, and it'd get to the point of being as useful as podfuk (esp. in terms of the target goal for this). With the cable modem only a couple of days away, I should have a decent beta test site for kernel rsync available soon. (Probably a good time to rebuild the kernel and get the Maxtor 30GB drive working on the HPT366 controller)

Ok, that's enough for now... yes, I didn't link many of the terms here that I could/should have, but I'm sick of having lost all that previous work... ugh

Ya know, something in advogato that lets you create url's to link common terms with would be nice. Maybe a "Linkify" button after Post and Preview, then letting you remove/fix/whatever the links you don't like... sure would save a lot of effort.

I know, I know... "Sounds like you're volunteering for the job"... sheesh, isn't coming up with the idea worth anything?


UPDATE: AVFS works w/o the redir module loaded! I've confirmed a working non-root user-space rsync --daemon that served the source of a kernel w/o extraction! woo hoo!

Just need some speedy connection to start live testing :)

Since a simple user-space daemon and loading the in-kernel coda module is all that's required, I'd be surprised if this didn't catch on at multiple places... once people get used to kernel updates like this, people will wonder why patch was ever used :)

Time to get that little bit of perl written up that updates the rsyncd.conf file... I need to check and see how normal kernel.org mirrors do their updates... should be easy enough to tag the code on the end of their work, maybe just another little bit of work after the mirroring program finishes

Saturday, oh, Saturday...

Looks like I'll be spending most of the day at work trying to get some progress on both the 120-drive array and hopefully lots of good progress on the independent study. Unfortunately, the two machines I had a fiber crossover between are now in separate labs, but I guess that's ok... another machine with a Gbit Enet card is sitting over in a rack doing nothing, so maybe I'll do a big rearrange and get some good numbers. I still don't think the approach (nbd + s/w raid 0) really buys you anything, but I guess the IS is really more about some observations, deductions, conclusions, etc...

I gotta find my Oracle 8i for Linux CD... it'd be neat to see how its internal caching helps buffer against the performance hit of doing nbd et al, but we'll have to check that out later I guess.

Went and saw Caroline Rhea at Charlie Goodnight's last night... she was hilarious. Far too many Carolina types in the crowd, sadly (business and marketing majors... easy to spot in a crowd of otherwise intelligent people. Thankfully a good chunk of her act made copious amounts of fun of them, but I get the impression that those kinds of people are what give others impressions of North Carolina... that and rednecks. sigh

So there we were, in the Congo.

No email about movies last night, which I have to admit is a little weird. Drew heads off to Conn for a few weeks, and the movie trips just drop off the face of the planet. Maybe it's just me...

Thanks to the RHAD Labs, I'm now also addicted to Onion Head Monster, but I guess that's a safe addiction...

Enough useless chatter, time to get back to work

Lots of bad weather today... ugh... feels like Seattle without the stock options.

Shoulder still feels like it's about to pop out of joint during lay pulldowns, but now it's feeling worse even during butterflies... Figures... guess I'll have to give the sis-in-law a shout and see what she says (gotta put that Masters of hers to good use)

Potential job offer that I'd love to have is in the mix... (I'd mention it here but it's hard to restrict potential readers so I'll have to be a little careful for now). I've got a couple of weeks to cram for what will basically boil down to an interview... should be fun, except it's the same two weeks I'm supposed to be finishing my independent study in, so things will get a little crazy. This isn't even mentioning the NBA playoffs that I'm trying not to miss. Kinda scary.

Just about got all the voodoo magic related to the trace tool documented (albeit in an encrypted form for semi-obvious reasons). After writing it all down, it's frightening how hokey this thing really is. I can't wait until the back half of this year when we can complete the designs for the next generation tool... Life will get so much easier with that thing! Lots of status LED's to impress PHB's, too... something we left out of the current generation without realizing how much we'd need to market it internally :)

Gonna move the trace data server (at least for the next few rounds) over from the other lab and get the 120-disk RAID array up and working... should make for some fun benchmarks if nothing else :)

Ok, let's take it from the top.

Turns out Enterprise will rent you a Maxima... kind of. All they give the option for is getting a "Premium" class car, and you're stuck with the 1 in 5 chance that it'll be a Maxima. Trying to explain that this was going to be an extended test drive for the explicit purpose of finding out how the Maxima rode in my daily commute didn't seem to help my cause any. Latoya Livingston (works at one of the Raleigh Enterprise locations... she's about to move to sales as it turns out) said she'd love to be able to help me, but she doesn't have any control over the situation. She did, however, explain how she could sell me a one-year-old car with about 20k miles on it for around 7k less than the MSRP. *sigh*

So the trace tool is working now. After a few hours with the HP (or Agilent, or whatever) Infinium Oscilloscope (I love that machine...just wish it didn't run Win98) and a little probing around (the trace tool current version exists as a sandwich-stack of circuit boards, and of course all the signals get broken somewhere in the middle layers), it turns out there was a stupid cold solder joint between a surface trace and an adjoining Berg connector pin... figures.. A little shoving of some wire in there (at least until I can get the soldering iron over to reflow and fix the solder joint) and the RS2 signal (most significant response bit on the P6 bus) was working fine! A6 (address bit 6) still has some issues. It seems to randomly flip between stable (almost perfect behavior) and seemingly random modes. Might also be a loose connection somewhere, but the GTL+ original signal looks a little flaky, so I'm wondering if maybe we have some issues with this preprocessor.

So the sis-in-law (Julie's S&M c/o 94 FWIW) made it down from AsheVegas and did the car swap thing. Finally I'll be able to sleep all the way through the morning without having to get woken up by Jessica having more car problems! I still want to go ahead and get her in a Maxima if possible... If nothing else, it'll keep the complaints low when I pick up my own next car :)

Python seems like a nice enough language, but I'm not sure it's going to be as easy doing all the regexp stuff I was doing in Perl... it appears to completely lack the report form printing stuff from Perl, so that may kill any chance of doing a python conversion... the trace tool software simply relies far too heavily on the ease of report forms

I really need to get some more write-up and work done on my independent study... hopefully I can dedicate next week to that, or at least a large chunk of that time.

Watched 28 days earlier this week (it's actually pretty decent, as much as I wasn't looking forward to a chick flick night) and Keeping the Faith last night (9:45 show at the Grand with The Nashville Network in some huge semi out front... only in the South). KTF was a tad long, but it had enough funny spots and nice lines ("Kosher Nostra", for instance) to keep things decently interesting. Movie letting out at midnight on the proverbial school night was stretching it, but maybe next time we'll do Milton's a little eariler than 6:30 and be able to make the earlier 7-ish show.

After a reboot, my Linux workstation is doing audio normally again, which is good as I was really getting to miss xmms. Yay!

Well, time to go get some various things done lurking on my Palm's todo list. Hasta la pasta.

Been a few days...

Easter weekend was pretty fun, actually. Saturday spent mostly with a concrete mixer filling in a growing sinkhole forming under the driveway of my in-laws' neighbor's house. Learned very quickly that concrete dust that spews up while dumping an 80 lb bag into the mixer not only makes breathing difficult, but it tastes crappy too! Yum!

Since we had a few bags of concrete left over (total for the day was 21 bags, 80lb of concrete each - before water :), we made the remaining concrete and filled in a huge pothole in the street. The people around Fayetteville can be bad drivers, though, so we put up a couple of sawhorses around it to protect things. Amazingly enough, the sawhorses (and filled-in pothole) remained intact through to the next morning (long enough to get it 90% set, which is all I really cared about)

My reward for all this manual labor (a nice reminder for why I keep going to school... more degrees == less chance of physical work, right? Right? Hellllllo??? Bueller?) was helping cook vat-o-s'ghetti, grilling hot dogs, and torching dozens of innocent marshmallows in an attempt to make the World's Most Perfect Smore (tm). Weather was cooperating, at least, which was good (wet marshmallows can make for really crappy Smores.

Sunday spent hitting the parents' place. Swapped their USR 28.8 for a Viking v90 WinModem (shudder) and noticed that everything seemed happy with the swap except their FreeInternet.com setup that seemed to still be looking for the old modem. I'll reinstall next time I'm down... they've still got working Juno and NetZero, which is all that matters much since they both have barely-firewalled connections at work.

Monday (yesterday) was all about trying to resurrect the trace tool (I'll insert a link as soon as I get things documented enough to put up a decent page... I swear! :) and get some tracing done at work for the SpecWeb set-up. It looks like we might skip the back-end database stuff (which we'll get a better picture of from TPC-W anyway) and simply trace the IBM HTTP Server ("Very Slightly Hacked Apache") load. I haven't gotten to play with the server much since my 2.3.x attempts of getting good performance out of the dual-PIII Netfinity 4000R (two processors, 1U of space, before Penguin or anyone else :)

I'm considering redoing large chunks of the trace tool software set using python. I've been going through the python tutorial and it would certainly make an easier language for maintaining these things. I'm still a little upset at Texas Memory Systems at the moment. We get our new 200MB/sec setup (64-bit PCI card combined with the TXL200 card to go into the SAM unit... the two cards are connected by 4 strands (2 pair) of multi-mode fiber), and they still don't support sending basic commands over the interface (what a waste).

FWIW, not being able to send those basic commands is a pain mainly because it forces me to do the port initializations, transfer commands, and data transfer wait's (need to block on the trace finishing before reading the data out) over a crappier interface. Currently, it's a serial line that runs to the SAM (ugh!). It used to be an ethernet run from the crappiest RS/6000 we could get our hands on, but whatever methods of flow control that was getting used (very strange UDP hack... why TCP wasn't used is beyond me) failed miserably. I might get stuck revisiting the issue and trying ethernet again, but RARP (only unpainful method to deal with the SAM) is still a little bit of a pain under Linux, it appears... ugh

On the bright side, the Charlotte Hornets won yesterday to even their first-round playoff series against the Philadelphia 76ers. This is a good thing, especially as it'd be nice to see the Hornets (hottest team at the end of the regular season, at least in the Eastern Conference) go deep into the playoffs for a change.

This morning was spent getting woken up by a call from the wife. She thought the car was on fire. Turns out it was a busted hose and the fluid (probably antifreeze, based on her description of the smoke) was just getting steamed on the engine. I'm sure the nice guys from the fire department (nope, I'm not kidding) must have liked that run. With the weather as crappy as it is (just enough drizzle to make you feel bad, not enough to warrant an actual umbrella), I'm sure they wanted to be somewhere else.

Now if this were Jessica's actual car, it wouldn't be a huge problem. Reality is, though, that this is Julie's car, her younger sister up in Asheville, who needed an automatic to drive since she lost the use of one knee while recovering from a skiing accident that tore up her MCL. It's a '91 Beretta that I've personally replaced 2 starters on just in the few weeks we've had it. To say it has issues is an understatement :) On the bright side, this will hopefully be a good opportunity to get Jessica test-driving a car. Her 92 Tempo is ok, but it's getting old and selling it before it hits 100k miles would be better than trying to get some cash for it afterwards. Anyone know of a place that rents the Nissan Maxima SE? That's the car I'd like to get. Decent price (despite the Edmund's review), nice acceleration, decent MPG, nice stereo, etc.

Anyway, enough useless chatter for now. Back to tracing and trying to track down a rental place that has a Maxima.

New account... I get to blame Jeremy if I don't like it, so that's a good thing.

Spent most of afternoon testing the IBM ServeRAID adapters (drivers/scsi/ips.[ch]) with h/w RAID-0 with s/w RAID5 on top (my personal favorite). No, they're not as nice as my Mylex eXtremeRAID 1100 cards, but they're connected to the crappy Timpani 1.0 (not 1.5) enclosures, which are SAF-TE compliant but crappy performance. Still deciding whether or not to head over to the DULUG meeting tonight...

Spent a little time unscrambling a network that two coworkers (one of them my manager, Dr. Ken Vu who teaches a networking course @ncsu.edu) had spent 5 hours trying to get working. 6 minutes later, everything was working (woohoo :). Having to explain to a networking prof how a tokenring/ethernet router works was fun (and no, assigning a token ring ip address to your ethernet card doesn't make it connect *sigh*)

I'll probably go since the movie doesn't start until like 9:30. Jeremy is out of town back in Hickory, so I'm probably stuck with Drew and Hunter (if they show up) for geek talk... gotta find out if the wife wants to go...We'll probably end up seeing 28 Days, which is good since one of my mother's college roommates was in it. I haven't seen her since the time I broke her finger blocking her shot playing basketball. My mother will never let me live that down... ugh

I really need to get some more work done on my independent study, which is currently focused on using the network block device and software raid in the kernel for getting a decent-performing 100% non-local filesystem. Main focus is network-based s/w raid0 for doing database benchmarking. ideally these numbers will be extrapolatable (no, it's not in /usr/dict/words) to local-disk performance numbers, but that's later :)

Got to the installfest a little late on Saturday because of a very nice bachelor party Friday night that ran a tad late. Only enough time to show up and confirm that Nitin Dahyabhai (nalin@redhat.com's brother) had indeed renegged on my deal to get his spare voodoo3-3000 (and sell it for less to his brother!). He has a huge conscience, though, so I'm at least getting a lunch out of it.

Birthday party on Saturday for Chris Mojica (Lucent/INS/catt@ncsu) that went well. For the first time in awhile, I kept from getting totally trashed so hopefully a few of the people there think I'm somewhat sane now.

Pam's birthday party was on Sunday. I gave spot a ride, and we ended up being chefs for the first couple of hours. Far too much Outburst played, with the main outcome being that Drew is psycho and needs Ritalin (sp?) badly.

Anyway, first entry (I'm sure it sucks). Enjoy.

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!