From: Joe Buehler Date: Wed, 13 Oct 2004 15:07:53 +0000 (+0000) Subject: linux-pagelaunder-avoid-deadlock-20041012 X-Git-Tag: BP-disconnected~208 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=33809f6c7382ab07d018809922a2a2b06e798b63;p=packages%2Fo%2Fopenafs.git linux-pagelaunder-avoid-deadlock-20041012 FIXES 15239 mmap'd files can deadlock on linux; fix by not letting kernel free pages out of our space predictively ==================== This delta was composed from multiple commits as part of the CVS->Git migration. The checkin message with each commit was inconsistent. The following are the additional commit messages. ==================== FIXES 15239 mmap'd files can deadlock on linux; fix by not letting kernel free pages out of our space predictively --- diff --git a/src/afs/LINUX/osi_vnodeops.c b/src/afs/LINUX/osi_vnodeops.c index c09561a1f..8178d0bbe 100644 --- a/src/afs/LINUX/osi_vnodeops.c +++ b/src/afs/LINUX/osi_vnodeops.c @@ -1480,6 +1480,12 @@ afs_linux_writepage(struct page *pp) unsigned offset = PAGE_CACHE_SIZE; long status; +#ifdef PageLaunder + if (PageLaunder(pp)) { + return(fail_writepage(pp)); + } +#endif + inode = (struct inode *)mapping->host; end_index = inode->i_size >> PAGE_CACHE_SHIFT;