public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [patch 13/16] put in-memory filesystem dirty pages on the correct list
@ 2002-06-01  8:43 Andrew Morton
  0 siblings, 0 replies; only message in thread
From: Andrew Morton @ 2002-06-01  8:43 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: lkml



Replaces SetPageDirty() with set_page_dirty() in several places related
to in-memory filesystems.

SetPageDirty() is basically always the wrong thing to do.  Pages should
be moved to the ->dirty_pages list when dirtied so that writeback can
see them.

Without this change, dirty pages against in-memory filesystems would
churn around on the inactive list all the time, rather than getting
pushed away onto the active list.  A minor efficiency thing.


=====================================

--- 2.5.19/mm/shmem.c~shmem	Sat Jun  1 01:18:13 2002
+++ 2.5.19-akpm/mm/shmem.c	Sat Jun  1 01:18:13 2002
@@ -854,7 +854,7 @@ shmem_file_write(struct file *file,const
 
 		flush_dcache_page(page);
 		if (bytes > 0) {
-			SetPageDirty(page);
+			set_page_dirty(page);
 			written += bytes;
 			count -= bytes;
 			pos += bytes;
@@ -1139,7 +1139,7 @@ static int shmem_symlink(struct inode * 
 		kaddr = kmap(page);
 		memcpy(kaddr, symname, len);
 		kunmap(page);
-		SetPageDirty(page);
+		set_page_dirty(page);
 		unlock_page(page);
 		page_cache_release(page);
 		up(&info->sem);
--- 2.5.19/mm/filemap.c~shmem	Sat Jun  1 01:18:13 2002
+++ 2.5.19-akpm/mm/filemap.c	Sat Jun  1 01:18:13 2002
@@ -450,7 +450,7 @@ int fail_writepage(struct page *page)
 	}
 
 	/* Set the page dirty again, unlock */
-	SetPageDirty(page);
+	set_page_dirty(page);
 	unlock_page(page);
 	return 0;
 }

-

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2002-06-01  8:42 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-06-01  8:43 [patch 13/16] put in-memory filesystem dirty pages on the correct list Andrew Morton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox