I've been discussing with our kernel developers a couple of hangs (process and system) that seem to be associated with openafs usage and heavy system load. I would like to suggest two changes to the openafs linux_alloc() routine which we believe will help matters.
The first is to change the gfp_mask passed to kmalloc(). Using GFP_KERNEL, it is possible that the VM will call back to the filesystem to free up memory to satisfy the kmalloc request. GFP_NOFS will prevent this possible recursion. I believe GFP_NOFS first appeared in the 2.4.6 kernel. The second change involves the call to schedule() when vmalloc() fails. This can also cause a hang. The schedule() call could be replaced with: set_current_state(TASK_INTERRUPTIBLE); schedule_timeout(HZ); I'm certainly not an expert on the openasf code, but I believe these changes are correct and needed. I'm interested in hearing other opinions. thanks, Guy Streeter Red Hat _________________________________________________________________ Join the world�s largest e-mail service with MSN Hotmail. http://www.hotmail.com _______________________________________________ OpenAFS-info mailing list [EMAIL PROTECTED] https://lists.openafs.org/mailman/listinfo/openafs-info
