[PVFS-developers] updates for RedHat's 2.4.20-20.9 kernel

Robert Latham robl@mcs.anl.gov
Tue, 2 Dec 2003 18:44:39 -0600


--0F1p//8PRICkK4MW
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Several of you have run into problems building pvfs-kernel on RedHat 9
machines with the latest kernel update (2.4.20-20.9, though possibly
with others).

I've updated pvfs-kernel so that it *should* detect which kernel is
being used and do the right thing.  The compressed patch is attached. 

Some caveats:

. I've only tested this in the "compiled kernel matches kernel source"
  case.

. The kernel changes mean kpvfsd does not compile any more.  You will
  not be able to use kpvfsd with redhat's kernels, but the traditional
  pvfsd apprach will (probably) still work.

. I do not have root on any redhat 9 machines here.  Therefore, while
  i know we compile now, i don't know if deeper changes have happened.
  If the new schedluler and threading mechanism mean kernel modules
  have to do "something" (where "something" could be "anything" :> )
  extra, we don't do it yet.  


If people are still running into problems on redhat machines with the
NTPL backport, let us know and we'll try to fix things.

have fun
==rob

-- 
Rob Latham
Mathematics and Computer Science Division    A215 0178 EA2D B059 8CDF
Argonne National Labs, IL USA                B29D F333 664A 4280 315B

--0F1p//8PRICkK4MW
Content-Type: application/x-gunzip
Content-Disposition: attachment; filename="redhat-ntpl-fix.patch.gz"
Content-Transfer-Encoding: base64

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

--0F1p//8PRICkK4MW--