[OpenAFS-devel] Re: Crash on AIX 6.1 TL6 SP3

Niklas Edmundsson Niklas.Edmundsson@hpc2n.umu.se
Thu, 24 Feb 2011 16:12:37 +0100 (MET)


On Thu, 24 Feb 2011, Niklas Edmundsson wrote:

> If we're lucky we might ensure that builds on TLearly works on TLlate with 
> just doing m_flags2=0 ourselves.

Unfortunately, this doesn't seem to be the case. I 
added m_flags2=0 in the approppriate places in src/rx/AIX/rx_knet.c 
without success.

After a bit of testing i found out that TL4-compiled openafs didn't 
work on TL6, and TL6-compiled openafs was no-go on TL4. In the light 
of that fact I would have been surprised if m_flags2=0 had been 
enough.

My conclusion is that IBM has failed to keep binary module compat 
intact in AIX 6.1.

I'm out of ideas on what to try next, I think someone with more clue 
on where to find relevant docco/info is needed.

The least we could do is to detect that it won't work and abort upon 
trying to load openafs.

The most appropriate which-version-am-I-running tool I can find is the 
oslevel -s command in userspace, which outputs a string on the form:
6100-06-03-1048

oslevel -s is rather slow though (2-3 seconds on this POWER6 machine).

An alternative is to just check the fileset version owning the mbuf.h 
include file with lslpp, which takes fractions of a second.
lslpp -lcq bos.adt.include
which outputs a : separated string on the form:

/usr/lib/objrepos:bos.adt.include:6.1.6.3::COMMITTED:F:Base Application Development Include Files:

What would the reasonable approach be to do this? Assume that people 
are using the rc.afs as shipped with openafs and script it there? Or 
be more hard core and code the check into cfgafs?

In any case we need to stamp the build with info on what it was built 
on, and I think that the oslevel -s output is more generic and useful 
even though it's slooow.

/Nikke
-- 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  Niklas Edmundsson, Admin @ {acc,hpc2n}.umu.se     |    nikke@hpc2n.umu.se
---------------------------------------------------------------------------
  April Fools! You're really in a holodeck simulation!
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=