Re: zone state overhead

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> > In this case, wakeup_kswapd() don't wake kswapd because
> > 
> > ---------------------------------------------------------------------------------
> > void wakeup_kswapd(struct zone *zone, int order)
> > {
> >         pg_data_t *pgdat;
> > 
> >         if (!populated_zone(zone))
> >                 return;
> > 
> >         pgdat = zone->zone_pgdat;
> >         if (zone_watermark_ok(zone, order, low_wmark_pages(zone), 0, 0))
> >                 return;                          // HERE
> > ---------------------------------------------------------------------------------
> > 
> > So, if we take your approach, we need to know exact free pages in this.
> 
> Good point!
> 
> > But, zone_page_state_snapshot() is slow. that's dilemma.
> > 
> 
> Very true. I'm prototyping a version of the patch that keeps
> zone_page_state_snapshot but only uses is in wakeup_kswapd and
> sleeping_prematurely.

Ok, this might works. but note, if we are running IO intensive workload, wakeup_kswapd()
is called very frequently. because it is called even though allocation is succeed. we need to
request Shaohua run and mesure his problem workload. and can you please cc me
when you post next version? I hope to review it too.

Thanks.


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



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]