Martin Pool's blog

$10000 worth of dogfood

My day job is developing Linux software for hp Itanium2 servers. I'm going to try using an hp zx6000 as my workstation.

Initial impressions: (strictly my personal opinion):

The hardware is very tidy indeed. Clearly a lot of thought went into the mechanical design.

The machines have really neat manageability support: an onboard service processor so that you can get to the bootup and OS console over the lan and similar tricks.

Sadly the firmware support for this is less friendly than it might be. I think everyone who has tried to install such a machine has had the experience of the machine hanging at bootup... except it's not really hung, it's just talking to the wrong console port. Once you find and follow the right instructions it's fine. (Installing Linux on hp Itanium 2-based Servers and Workstations may be the right one, or you may find an update on hp.com.)

It's very quick. I have not run it back to back against a brand-new top-end Xeon or Opteron but it's much faster than most PCs.

My unit has a FireGL card, which seems to have only binary drivers, which is a pain if you need to run anything but the specified redhat release.

Thank goodness for Debian. Having a single system which is freely available and nearly the same across different hardware is great.

Palm T3, going cheap

I have a brand new Palm Tungsten T3 that I don't need. Want to buy it?

This has four times as much memory as my first PC, and a thousand times more than my first computer. Amazing.

Compaq W200 wireless card

My Compaq N410c laptop has a W200 wireless card, which is connected via a special USB port. I just got it working using the Orinoco-USB drivers on 2.4.24.

N410c

/evo-N410c-acpi-static--2003-11-06.diff: kludgy patch to make ACPI work on the HP Compaq Evo N410c laptop, and a kernel configuration. A far better description of how to make this work is here.

I haven't tested it very much yet but this does at least allow X to run and prevents the machine going into thermal shutdown.

Magic SysRq over telnet

Cute Itanium tricks department:

On the hp Integrity Itanium servers, you can telnet into the management processors and talk to the Linux host's serial console. In particular you can use this to talk to the ELILO boot loader, and to look at oopsies.

One cool thing I recently discovered is that you can send a TELNET BREAK which is translated into a serial break, which has a similar effect to pressing SysRq on a regular keyboard. That is, you can get a list of processes, sync the disks, or unmount the disks for a semi-graceful reboot.

To send a break from the standard Unix telnet client, hit Ctrl+] then type send brk. You need to pause for a second or so after typing this because the break locks out other activity on the serial port.

Debian GNU/Linux testing/unstable kate console
Linux ia64 2.4.22-showmem #29 SMP Wed Oct 29 14:59:35 EST 2003
                                                                                
kate login:
telnet> send break
SysRq : HELP : loglevel0-8 reBoot tErm kIll saK showMem Off showPc
unRaw Sync showTasks Unmount
                                                                                
telnet> send break
pSysRq : Show Regs
                                                                                
Pid: 0, CPU 1, comm:              swapper
psr : 0000101008026018 ifs : 8000000000000000 ip  :
[<e000000004415440>]    Not tainted
ip is at (no symbol)
unat: 0000000000000000 pfs : 000000000000050a rsc : 0000000000000003
rnat: 8000000000000013 bsps: 000000000001003e pr  : 80000000ff605935
ldrs: 0000000000000000 ccv : 0000000000000000 fpsr: 0009804c8a70433f
csd : 0000000000000000 ssd : 0000000000000000
b0  : e0000000044155f0 b6  : e000000004402d60 b7  : e000000004415440
f6  : 1003e2e8ba2e8ba2e8ba3 f7  : 1003e000000000b0b5c99
f8  : 1003e0000000000fd086b f9  : 1003e000000000adf5c99
f10 : 000000000000000000000 f11 : 1003e000000000b0b5c99
r1  : e000000004c6ea80 r2  : 0000000000000000 r3  : 0000000000000000
r8  : 0000000000000000 r9  : e0000040fffa8050 r10 : 0000000000000000
r11 : 0000000000000000 r12 : e0000040fef87e30 r13 : e0000040fef80000
r14 : e0000040fef87dd0 r15 : e0000040fef80028 r16 : 0000000000000000
r17 : 0000000000000000 r18 : e000000004a78688 r19 : e0000040fef80038
r20 : 0000000000000000 r21 : 0000000000000000 r22 : e0000040fef80028
r23 : e000000004415440 r24 : 0000000000000000 r25 : 0000000000000000
r26 : 0000000000000000 r27 : e0000040fef80e90 r28 : 80000000ff606535
r29 : 0000000000000001 r30 : 0000000000000000 r31 : 0000000000000001

ACPI on an Evo N610c

I have an Evo N610c that I am trying to get working with Linux.

This machine doesn't have useful APM support, so power management will only work with ACPI. If you run a kernel with APM, it will work fine on AC power, but lock up fairly quickly when suspended, as other people have documented.

The stock 2.4.21 ACPI support doesn't recognize enough of the hardware to be useful. Possibly an ACPI patch for 2.4.21 would make it work, but I'd like to stay with a maintstream kernel if I possibly can.

2.6.0test2 looks more promising: it will detect all the hardware, can control the fans from software, and does not crash. It can even do an orderly shutdown when the power button is pressed, courtesy of acpid. However it cannot suspend yet, either through ACPI or swsup. It needs more investigation.

2.6.0test2 also recognizes the touchpad/clitmouse, but gpm and X11 don't see the events from it. Apparently the Synaptics touchpad is like a PS/2 mouse, but not quite the same. Strangely enough it did work with the plain ps2 driver in 2.4, so perhaps something is broken in Synaptics support.

Manageability on HP Itanium Linux Servers

I've just been using and exploring the Management Processor (MP) on an HP rx2600 Linux Itanium server. It's really slick. I'm very impressed.

The MP is basically a daughterboard containing an ARM7 embedded processor, which has a serial and 10/100 ethernet port, and a simple VGA controller. It's tied into the main motherboard through I2C, PCI and other (?) connections, so it can see what's happening but is independent from the main processors. The board has a little bit of RAM, ROM, and NVRAM.

This is kind of similar to the debug monitor features you might have encountered on Sun machines or Macs, but putting it on a separate board has a few interesting features. One is that the MP is active whenever the machine has mains power, even if the main processors and fans are shut down, and it can bring it back up. Another is that the MP ought to be less intrusive with the operation of a machine: a debug monitor typically halts the whole machine while its active, whereas this allows the machine to keep running.

An enormously cool thing about the way the MP is implemented is that its console appears to Linux as a regular UART. Simply by booting with console=ttyS0 you can get all the Linux boot information routed through the management processor. That in turn allows a few interesting possibilities: sending them to a serial console of course, or across a telnet connection, or logging them in NVRAM so they can be inspected later. Similarly if the kernel panics, you get that information in a telnet window where it can be easily saved, not on a screen where it has to be copied down.

Other nice features:

One downside of the current implementation is that the network interface is not active by default, and you apparently can't get into it through the VGA console. So to enable all this functionality, as far as I can make out, you have to start out with a null modem connection, which can be a bit difficult. But there may be some way around that that I just have not discovered yet.

I was at first a bit confused about the interaction between the MP and the EFI (Extensible Firmware Interface) pre-boot system, but it looks like they're more or less separate and complementary.

I suppose these features are taken for granted by the high-end Unix audience, but this is the first time I've personally seen them in a machine that is within shouting distance of i386 bang/buck, at least for some applications. Not needing to traipse down to machine rooms to work out whats wrong, and being able to get accurate information about a problem without needing to reproduce it or suspend operation should be a boon for serious users.

All this, and it also keeps my feet toasty warm!

Linux on a Compaq Evo N800w

I'm installing Red Hat Linux 7.3 on a Compaq Evo N800w. (No, it's not mine unfortunately, it's for a colleague.)

Considering that 7.3 is much older than the hardware it does pretty well. There are a couple of traps: USB doesn't work with the default 7.3 kernel, or with the kernel on the LNX-BBC 2.1 either for that matter. Booting with the kernel parameter nousb fixes that.

Also, Red Hat's Kudzu hardware detection program locks up when scanning the machine, so you need to boot single user and disable it.

Aside from that everything seems to work. The Radeon 9000 video card is partially supported in XFree86 4.2, and reportedly has better acceleration in 4.3.

The machine looks pretty nice. The screen is enormous and crisp, and probably pretty fast with the proper drivers installed. It's less heavy than some other full-featured machines like the IBM A21, in part because HP/Compaq has finally been smart enough to drop the floppy drive. (Getting a floppy drive on a new laptop in 2003 is like getting a tail on your child....)

Archives 2008: Apr Feb 2007: Jul May Feb Jan 2006: Dec Nov Oct Sep Aug Jul Jun Jan 2005: Sep Aug Jul Jun May Apr Mar Feb Jan 2004: Dec Nov Oct Sep Aug Jul Jun May Apr Mar Feb Jan 2003: Dec Nov Oct Sep Aug Jul Jun May