2013/4/10 Christoph Lameter <cl@xxxxxxxxx>: > On Wed, 10 Apr 2013, Joonsoo Kim wrote: > >> Hello, Christoph. >> >> On Tue, Apr 09, 2013 at 02:28:06PM +0000, Christoph Lameter wrote: >> > On Tue, 9 Apr 2013, Joonsoo Kim wrote: >> > >> > > Currently, freed pages via rcu is not counted for reclaimed_slab, because >> > > it is freed in rcu context, not current task context. But, this free is >> > > initiated by this task, so counting this into this task's reclaimed_slab >> > > is meaningful to decide whether we continue reclaim, or not. >> > > So change code to count these pages for this task's reclaimed_slab. >> > >> > slab->reclaim_state guides the reclaim actions in vmscan.c. With this >> > patch slab->reclaim_state could get quite a high value without new pages being >> > available for allocation. slab->reclaim_state will only be updated >> > when the RCU period ends. >> >> Okay. >> >> In addition, there is a little place who use SLAB_DESTROY_BY_RCU. >> I will drop this patch[2/3] and [3/3] for next spin. > > What you have discoverd is an issue that we have so far overlooked. Could > you add comments to both places explaining the situation? Yes, I can. > RCU is used for > some inode and the dentry cache. Failing to account for these frees could > pose a problem. One solution would be to ensure that we get through an RCU > quiescent period in the slabs reclaim. If we can ensure that then your > patch may be ok. Hmm... I don't perfectly understand RCU code and it's quiescent period. But, yes, it can be one of possible solutions in my quick thought. Currently, I have no ability to do that, so I skip to think about this. Thanks. > > -- > To unsubscribe, send a message with 'unsubscribe linux-mm' in > the body to majordomo@xxxxxxxxx. For more info on Linux MM, > see: http://www.linux-mm.org/ . > Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a> -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>