All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Clear dirty bits etc on compound frees
@ 2003-11-26 20:13 Martin J. Bligh
  2003-11-26 20:20 ` Andrew Morton
  2003-12-01 19:40 ` Martin J. Bligh
  0 siblings, 2 replies; 5+ messages in thread
From: Martin J. Bligh @ 2003-11-26 20:13 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-mm mailing list, Guillaume Morin

Guillaume noticed this on s390 whilst writing a driver that used
compound pages. Seems correct to me, I've tested it on i386 as
well. The patch just makes us call free_pages_check for each element
of a compound page.

diff -purN -X /home/mbligh/.diff.exclude virgin/mm/page_alloc.c clear_dirty/mm/page_alloc.c
--- virgin/mm/page_alloc.c	2003-10-14 15:50:36.000000000 -0700
+++ clear_dirty/mm/page_alloc.c	2003-11-26 10:36:04.000000000 -0800
@@ -267,8 +267,11 @@ free_pages_bulk(struct zone *zone, int c
 void __free_pages_ok(struct page *page, unsigned int order)
 {
 	LIST_HEAD(list);
+	int i;
 
 	mod_page_state(pgfree, 1 << order);
+	for (i = 0 ; i < (1 << order) ; ++i)
+		free_pages_check(__FUNCTION__, page + i);
 	free_pages_check(__FUNCTION__, page);
 	list_add(&page->list, &list);
 	kernel_map_pages(page, 1<<order, 0);



--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"aart@kvack.org"> aart@kvack.org </a>

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2003-12-02  9:55 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-11-26 20:13 [PATCH] Clear dirty bits etc on compound frees Martin J. Bligh
2003-11-26 20:20 ` Andrew Morton
2003-12-01  3:02   ` Guillaume Morin
2003-12-01 19:40 ` Martin J. Bligh
2003-12-02  9:55   ` Arjan van de Ven

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.