Messages in this thread | | | Date | Sat, 2 Jan 2010 22:29:41 +0900 | Subject | Re: [PATCH] mm, lockdep: annotate reclaim context to zone reclaim too | From | KOSAKI Motohiro <> |
| |
2010/1/2 Peter Zijlstra <peterz@infradead.org>: > On Sat, 2010-01-02 at 14:21 +0900, KOSAKI Motohiro wrote: >> 2010/1/2 Peter Zijlstra <peterz@infradead.org>: >> > On Fri, 2010-01-01 at 18:45 +0900, KOSAKI Motohiro wrote: >> >> Commit cf40bd16fd (lockdep: annotate reclaim context) introduced reclaim >> >> context annotation. But it didn't annotate zone reclaim. This patch do it. >> > >> > And yet you didn't CC anyone involved in that patch, nor explain why you >> > think it necessary, massive FAIL. >> > >> > The lockdep annotations cover all of kswapd() and direct reclaim through >> > __alloc_pages_direct_reclaim(). So why would you need an explicit >> > annotation in __zone_reclaim()? >> >> Thanks CCing. The point is zone-reclaim doesn't use >> __alloc_pages_direct_reclaim. >> current call graph is >> >> __alloc_pages_nodemask >> get_page_from_freelist >> zone_reclaim() >> __alloc_pages_slowpath >> __alloc_pages_direct_reclaim >> try_to_free_pages >> >> Actually, if zone_reclaim_mode=1, VM never call >> __alloc_pages_direct_reclaim in usual VM pressure. >> Thus I think zone-reclaim should be annotated explicitly too. >> I know almost user don't use zone reclaim mode. but explicit >> annotation doesn't have any demerit, I think. > > Just be aware that the annotation isn't recursive, I'd have to trace all > calls to __zone_reclaim, but if kswapd were ever to call it you'd just > wrecked things by getting lockdep_clear_current_reclaim_state() called. > > So just make sure you don't shorten the existing notations by adding it > here. Other than that it seems ok.
Umm, probably I haven't catch your mention. currently kswapd never call __zone_reclaim() because kswapd has PF_MEMALLOC and PF_MEMALLOC prevent to call __zone_reclaim (see zone_reclaim()).
When recursive annotation occur? -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |