From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20020830 Description of problem: From IT#52503 reported by Fujitsu Any filesystem call (sys_quotactl e.g.) that has read_dquot() in their code patch would have a chance to obtain the dqio_sem and subsequently calls getdqbuf() to invoke the kmalloc(..., GFP_KERNEL) function. When system is low on memory, this would have a chance to wakeup_kswapd(). Then it enters the prune_icache code path that eventually calls write_dquot() and deadlock in down(dqio_sem). Version-Release number of selected component (if applicable): linux-2.4.9-e.55 How reproducible: Didn't try Additional info:
Created attachment 106925 [details] e.55 patch This is the patch that should work with e.55 kernel. I'll do some testings tomorrow (to make sure if getdqbuf() return NULL, the kernel still behaves well).
A patch addressing this issue has been commited to the RHEL2.1 tree. (Kernel version 2.4.9-e.64.1)
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHSA-2005-551.html