File tree Expand file tree Collapse file tree 1 file changed +10
-2
lines changed Expand file tree Collapse file tree 1 file changed +10
-2
lines changed Original file line number Diff line number Diff line change @@ -596,18 +596,26 @@ static inline void mod_lruvec_state(struct lruvec *lruvec,
596596static inline void __mod_lruvec_page_state (struct page * page ,
597597 enum node_stat_item idx , int val )
598598{
599+ struct mem_cgroup * memcg ;
599600 struct lruvec * lruvec ;
600601
601- lruvec = mem_cgroup_lruvec (page_pgdat (page ), page -> mem_cgroup );
602+ /* Special pages in the VM aren't charged, use root */
603+ memcg = page -> mem_cgroup ? : root_mem_cgroup ;
604+
605+ lruvec = mem_cgroup_lruvec (page_pgdat (page ), memcg );
602606 __mod_lruvec_state (lruvec , idx , val );
603607}
604608
605609static inline void mod_lruvec_page_state (struct page * page ,
606610 enum node_stat_item idx , int val )
607611{
612+ struct mem_cgroup * memcg ;
608613 struct lruvec * lruvec ;
609614
610- lruvec = mem_cgroup_lruvec (page_pgdat (page ), page -> mem_cgroup );
615+ /* Special pages in the VM aren't charged, use root */
616+ memcg = page -> mem_cgroup ? : root_mem_cgroup ;
617+
618+ lruvec = mem_cgroup_lruvec (page_pgdat (page ), memcg );
611619 mod_lruvec_state (lruvec , idx , val );
612620}
613621
You can’t perform that action at this time.
0 commit comments