Skip to contentSkip to conversation

mark_buffer_dirty() speedup

PATCH In review Andrew Morton 1 participant 1 message Jun 17, 2002 VFS

lore
Share & tools
lore
#0 lore raw

PATCH 6/19 mark_buffer_dirty() speedup

mark_buffer_dirty() is showing up on Anton's graphs. Avoiding the buslocked RMW if the buffer is already dirty should fix that up.

fs/buffer.c renamed from fs/buffer.c~mark_buffer_dirty-speedup +1 -1
@@ -1218,7 +1218,7 @@ void mark_buffer_dirty(struct buffer_hea
 {
 	if (!buffer_uptodate(bh))
 		buffer_error();
-	if (!test_set_buffer_dirty(bh))
+	if (!buffer_dirty(bh) && !test_set_buffer_dirty(bh))
 		__set_page_dirty_nobuffers(bh->b_page);
 }
 

-