[lc-checkins] CVS: linux/mm filemap.c,1.35,1.36
Status: Beta
Brought to you by:
nitin_sf
|
From: Rodrigo S. de C. <rc...@us...> - 2002-07-28 20:48:36
|
Update of /cvsroot/linuxcompressed/linux/mm
In directory usw-pr-cvs1:/tmp/cvs-serv5964/mm
Modified Files:
filemap.c
Log Message:
Bug fix:
o Fixed potential deadlock in find_and_dirty()/lookup_comp_pages() which
wouldn't unlock a spin_lock (pagecache_lock).
Index: filemap.c
===================================================================
RCS file: /cvsroot/linuxcompressed/linux/mm/filemap.c,v
retrieving revision 1.35
retrieving revision 1.36
diff -C2 -r1.35 -r1.36
*** filemap.c 28 Jul 2002 15:47:04 -0000 1.35
--- filemap.c 28 Jul 2002 20:48:32 -0000 1.36
***************
*** 944,947 ****
--- 944,948 ----
page = __find_page_nolock(mapping, offset, *hash);
if (page) {
+ spin_unlock(&pagecache_lock);
__set_page_dirty(page);
return 1;
***************
*** 950,954 ****
spin_unlock(&pagecache_lock);
lru_cache_add(new_page);
- spin_lock(&pagecache_lock);
return 0;
}
--- 951,954 ----
|