[OpenAFS-devel] RE: problem with openafs on i386_linux22 SMP with 2.2.17, 2.2.18p re17

Neulinger, Nathan R. nneul@umr.edu
Thu, 30 Nov 2000 13:38:59 -0600


Ok. not sure if this fixes it or not, hosed my home machine trying... (can't
get to it at the moment)

I do know though that it does _not_ help the afsd going cpu-hog problem I
experienced on that box.

I'll let ya know as soon as I find out whether it corrects the memory oops.

-- Nathan

> -----Original Message-----
> From: Michael Pronath [mailto:Michael.Pronath@ei.tum.de]
> Sent: Thursday, November 30, 2000 6:50 AM
> To: Nathan Neulinger
> Cc: Derek Atkins; openafs-devel@openafs.org
> Subject: problem with openafs on i386_linux22 SMP with 2.2.17,
> 2.2.18pre17
> 
> 
>  Your post to openafs-devel on Fri, 03 Nov 2000:
>  
>  This is apparently a bug in the memory allocation code of 
> the Linux module
>  libafs-xxx.o . 
>  The hash structures for memory allocation are setup the 
> first time memory
>  is allocated.  If we insert the module with insmod, no allocation has
>  happened so far and the structures are not initialized.  If 
> you remove the
>  module with rmmod right after that, the function
>  osi_linux_free_afs_memory (src/afs/LINUX/osi_alloc.c:322) is called.
>  It mistakenly assumes that the hash lh_mem_tab is setup 
> already and uses
>  it.  This leads to the segfault.
>  
>  The following patch should fix this problem.
>  Apply it with
>  
>     cd src/afs/LINUX
>     patch < alloc.patch
>     
>     
> Patch file:
> cut here >----------------------------------------------
> --- src/afs/LINUX/osi_alloc.c	Mon Oct 30 19:07:41 2000
> +++ src/afs/LINUX/osi_alloc.c_new	Thu Nov 30 13:38:10 2000
> @@ -323,6 +323,7 @@
>  {
>      down(&afs_linux_alloc_sem);
>  
> +    if (allocator_init) {
>      /* iterate through all elements in the hash table and free both 
>       * the chunk and the atom associated with it.
>       */
> @@ -336,7 +337,7 @@
>  
>      /* change the state so that the allocator is now 
> uninitialized. */
>      allocator_init = 0;
> -
> +    }
>      up(&afs_linux_alloc_sem);    
>  }
> cut here >----------------------------------------------
> 
>  
> 
> Michael Pronath
> 
> 
> 
> -- 
> 
> Dipl.-Ing. Michael Pronath
> Lehrstuhl fuer Entwurfsautomatisierung            Tel:  +49 
> 89 289 23659
> Technische Universitaet Muenchen                  Fax:  +49 
> 89 289 63666
> Arcisstr.21, D-80333 Muenchen         TU-Innenhof, Gebaeude 
> 9, Raum 4915
> Mailto:Michael.Pronath@ei.tum.de
>