[OpenAFS-devel] Patch to make openafs-1.3.79+ work on AIX5

Niklas Edmundsson Niklas.Edmundsson@hpc2n.umu.se
Sat, 26 Mar 2005 20:10:50 +0100 (MET)


On Sat, 26 Mar 2005, Derrick J Brashear wrote:

>> Executive summary of the patch:
>> * Removed memory allocation functions only used on AIX and ancient
>>   HPUX. If the performance penalty is noticeable, implement a wrapper
>>   at the osi-level in the same manner as LINUX/FBSD (ie not sprayed
>>   throughout the code).
>
> Looking at the very first hunk, it's
> -#if    defined(AFS_AIX32_ENV) || defined(AFS_HPUX_ENV)
>
> Looking at .../config/param.ia64_hpux1123.h
> #define AFS_HPUX_ENV    1
>
> HP-UX 11.23 isn't ancient. So, really, it would be irresponsible of me to 
> apply this as-is until someone can try it on HP-UX. The other option is to 
> refactor it to not change HP-UX.

You need to look closer than that, since this code has so broken 
#ifdefs that it makes you cry:

The only call to osi_AllocMediumSpace() is done in rx/rx.c under:
#if    (defined(AFS_AIX32_ENV) || defined(AFS_HPUX_ENV)) && !defined(AFS_HPUX100_ENV) && defined(KERNEL)

However, the clever person adding the "AFS_HPUX100_ENV" part did NOT 
fix the calls to the initialisation function osi_AllocMoreMSpace(), so 
they are called on all hpux:en anyway.

The same goes for osi_AllocSmall() and osi_AllocMoreSSpace().

>> This should be commited to the openafs-tree as soon as possible so we can 
>> get a bit wider testing and find out if there are more remaining problems 
>> on AIX than the following:
>
> Can someone try this on HP-UX first?

This would be the best verification, yes.

/Nikke
-- 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
  Niklas Edmundsson, Admin @ {acc,hpc2n}.umu.se     |    nikke@hpc2n.umu.se
---------------------------------------------------------------------------
  "Come on, somebody bet already. I've got three 'K' cards." - Anya
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=