18 Jul, 2005 GWN

So after reading through the kernel@ mails there are an awful lot of people coming up with the same scenario over and over, or the same questions and comments.
I thought I would post a blog just to summarize and to also suggest some migration models for those of you who are struggling.

So lets start at the top.
We are not dropping 2.4 support in gentoo.
gentoo-sources (2.4) is a vanilla 2.4 kernel with the following patches applied:

useraddress.patch – Choice for user space memory limits.
lckbase-2.4.28_rc3.patch – Patch to select the O(1) schedular, preempt etc.
readlatency.patch – elevator improvements to increase read times.
ecc-20030225.patch – Properly implemented ECC memory management/error reporting.
OpenSWAN-2.1.4+natt.patch – the OpwnSWAN IPSEC patchset, with NAT-T support.
bootsplash-3.0.7.patch – Graphical bootsplash support.
deviceMapper-1.00.17.patch – support for the Device Mapper block device. Required for LVM/EVMS
superMount.1.2.11a.patch – Removable/automount style device which is useful for removable media
linux-ntfs-2.1.6b.patch – Windows NTFS fs, with improved write support.
squashfs-1.3r3.patch – the SquashFS compressed read-only device driver.
GRSecurity-2.0.2.patch – For enhanced (ACL) security.
cryptoloop-jari-2.4.22.0.patch – A crypt aware loop device.
GCC-optimizations.patch – Add -march support.
speakup-20040313.patch – The voice synthesiser. very useful for blind users.
GentooBootsplash – The gentoo derives bootsplash driver.

So, what does this mean?
Well, following recent input we have decided to keep gentoo-sources-2.4 maintained in the tree for a little while longer, although with a much lighter patchset.
The following are to be dropped:

grsec
cryptoloop
useraddress
supermount

For some people this will pose a problem. Specifically with grsec. However I would like to strongly suggest a migration away from gentoo-sources-2.4 towards one of the following based on your requirements:

A security hardened, grsec enhanced and stable kernel:
hardened-sources-2.4
hardened-sources-2.6

A stable, reliable 2.4 based kernel:
(Now I assume you need 2.4 for a better reason than “I’m lazy”)
vanilla-sources-2.4
hardened-sources-2.4 (without enabling grsec)

A featureful, stable, and desktop-orientated 2.6 kernel:
gentoo-sources-2.6
I strongly suggest this for people which want responsiveness, ease of use and functionality.
As you may notice the supermount patch is being dropped. The desired approach is most certainly to go with udev/dbus/hal and a 2.6 kernel with hotplug. This will be much more user-friendly.

Please be aware that gentoo-sources-2.4 is likely to go on another diet within the next 6 months or so, with the long-term goal of it being completely removed.

Almost all questions should be answered above, although if you are required to stay on a 2.4 kernel (but would like to run 2.6) due to the fact that a specific driver isnt available for 2.6 please dont keep to yourself. Drop a mail to kernel@gentoo.org and ask us. It is very likely we can help you out.

So, to summarise.
“I want to move to 2.4 but XYZ doesnt work” : mail us.
“I cant move to 2.6 because this is production, and I want grsec” : hardened-sources
“I dont want 2.6 you goofs, I need OpenAFS support” : Then stick with 2.4, but please consider moving to vanilla-sources.

OpenSWAN is the one real requirement still provided on a 2.4 kernel by gentoo-sources which isnt included in other sources. If you are in this situation please drop a mail to us so that we might find out more and proceed appropriately 🙂

So, panic over. You can all go enjoy a nice cup of coffee while your new kernels compile 🙂

Asus Pundit-R’s, Asterisk and Kids on Bikes

So its been a little while since I last posted so let me update you all.

My Girlfriend (Claire) and I are looking around for a house, making the big move in together. I never realised how stressful just looking is! We have seen a fair few that we like, and have arranged several viewings but time will tell. I’ve also got quite addicted to “Ladette to Lady” on TV. I didnt realise watching stupid pompous old grannies and crazy young girls would be so entertaining.

Oh, and then there is my car. The accident magnet. As some of you probably know some stupid woman crashed into it, which I had to claim for an so on, and I have just now (after months of waiting) recieved the estimates. Well, I sat down for my dinner the other day and the door-bell rang so I went to see who it was. Some kid (good on him for not running off mind) appologised for riding down the road, losing control and crashing into the side of my car. It left a rather tidy scratch all down the rear passenger-side panel, and also a nice dint. Less than impressed 🙁

Also, no idea how many people have seen this but its pretty awesome. Basically, 18 real life taxi cabs fitted with GPS and split into teams of three. You pick a “team” as your online monopoly piece and when a cab is near/on your property after the round is up, you get paid rent. equally you pay rent in the same way. Very cool!

Anyways, on a more technical note I’ve been playing with the Asus PUNDIT-R’s as a solution to running Asterisk with some difficulty. The digium card (TE110P) is based on a well documented, open card with open specs. Problem being there is just enough variation in it to make it a pig. Once you enable the spans on the card, the card will begin to send interrupts (in a frequency similar to the timer) and also enables DMA access. now, the IDE bus on this machine has a faulty DMA as it is, and also it appears a faulty (IO/L)APIC implementation.

Im still in the process of trying to diagnose as to why the box will hardlock under minimal load exactly, but it is almost certainly to do with the way it handles DMA, and more than likely it just clobbers userspace memory regions which will then be over-written by userspace, which then currupts kernel-space and hangs.
However, if anyone has any experience with these boxes, this hardware, and asterisk please give me a shout and let me know how you got on. I have even tried forcing interrupt allocation to the BIOS in a check to ensure sensible sharing.