[OpenAFS-devel] Oopses with 2.6.7 and 1.3.65

Rainer Schöpf rainer.schoepf@proteosys.com
Thu, 29 Jul 2004 22:08:42 +0200 (CEST)


On Tue, 27 Jul 2004, Rob See wrote:

 > 	I'm experiencing the following oopses with kernel 2.6.7 and openafs
 > ver 1.3.65 and CVS HEAD as of today. The libafs kernel module loads
 > successfully, but as soon as I run afsd I get the errors. I'm using a
 > vanilla 2.6.7 other than the sys_call_table patch. My .config is
 > available upon request. CONFIG_REGPARM is not enabled. I am loading the
 > .mp libafs module. If I load the standard one, the system hangs. The
 > kernel is compiled with SMP support. I've had the problem on a single
 > proc system, and a dual proc (with hyperthreading enabled.) /afs is
 > never successfully mounted. Does anyone have any suggestions ?

Yes. I had the very same problem today.

It's a problem of the libafs build process for linux: for MP the
preprocessor macro AFS_SMP must be defined, or CONFIG_SMP will be set to 0.
However, AFS_SMP is not defined, it is lost in the Makefile creation
process.

Try the appended patch. It's a bit of a hack, I'm afraid.

 Rainer Schöpf


*** src/config/param.i386_linux26.h~    Wed Jun  2 04:55:59 2004
--- src/config/param.i386_linux26.h     Thu Jul 29 21:24:32 2004
***************
*** 33,45 ****

  #include <linux/config.h>
  #ifdef CONFIG_SMP
! #undef CONFIG_SMP
  #endif
  /* Using "AFS_SMP" to map to however many #define's are required to get
   * MP to compile for Linux
   */
  #ifdef AFS_SMP
  #define CONFIG_SMP 1
  #ifndef CONFIG_X86_LOCAL_APIC
  #define CONFIG_X86_LOCAL_APIC 1
  #endif
--- 33,49 ----

  #include <linux/config.h>
  #ifdef CONFIG_SMP
! #ifndef AFS_SMP
! #define AFS_SMP 1
! #endif
  #endif
  /* Using "AFS_SMP" to map to however many #define's are required to get
   * MP to compile for Linux
   */
  #ifdef AFS_SMP
+ #ifndef CONFIG_SMP
  #define CONFIG_SMP 1
+ #endif
  #ifndef CONFIG_X86_LOCAL_APIC
  #define CONFIG_X86_LOCAL_APIC 1
  #endif