Re: [PATCH 4/7] bio-cgroup: Split the cgroup memory subsystem into two parts

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Andrea Righi
Date: Tuesday, August 5, 2008 - 3:25 am

Ryo Tsuruta wrote:

you can remove some ifdefs doing:

#ifdef CONFIG_CGROUP_MEM_RES_CTLR
	if (likely(!memcg)) {
		rcu_read_lock();
		mem = mem_cgroup_from_task(rcu_dereference(mm->owner));
		/*
		 * For every charge from the cgroup, increment reference count
		 */
		css_get(&mem->css);
		rcu_read_unlock();
	} else {
		mem = memcg;
		css_get(&memcg->css);
	}
	while (res_counter_charge(&mem->res, PAGE_SIZE)) {
		if (!(gfp_mask & __GFP_WAIT))
			goto out;

		if (try_to_free_mem_cgroup_pages(mem, gfp_mask))
			continue;

		/*
		 * try_to_free_mem_cgroup_pages() might not give us a full
		 * picture of reclaim. Some pages are reclaimed and might be
		 * moved to swap cache or just unmapped from the cgroup.
		 * Check the limit again to see if the reclaim reduced the
		 * current usage of the cgroup before giving up
		 */
		if (res_counter_check_under_limit(&mem->res))
			continue;

		if (!nr_retries--) {
			mem_cgroup_out_of_memory(mem, gfp_mask);
			goto out;
		}
	}
	pc->mem_cgroup = mem;
#endif /* CONFIG_CGROUP_MEM_RES_CTLR */
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH 1/7] dm-ioband: Patch of device-mapper driver, Ryo Tsuruta, (Mon Aug 4, 1:52 am)
[PATCH 3/7] bio-cgroup: Introduction, Ryo Tsuruta, (Mon Aug 4, 1:57 am)
[PATCH 5/7] bio-cgroup: Remove a lot of ifdefs, Ryo Tsuruta, (Mon Aug 4, 1:59 am)
[PATCH 6/7] bio-cgroup: Implement the bio-cgroup, Ryo Tsuruta, (Mon Aug 4, 2:00 am)
Too many I/O controller patches, Dave Hansen, (Mon Aug 4, 10:20 am)
Re: Too many I/O controller patches, Andrea Righi, (Mon Aug 4, 11:22 am)
Re: Too many I/O controller patches, Balbir Singh, (Mon Aug 4, 11:34 am)
Re: Too many I/O controller patches, Dave Hansen, (Mon Aug 4, 12:02 pm)
Re: Too many I/O controller patches, Andrea Righi, (Mon Aug 4, 1:42 pm)
Re: Too many I/O controller patches, Andrea Righi, (Mon Aug 4, 1:44 pm)
Re: Too many I/O controller patches, Dave Hansen, (Mon Aug 4, 1:50 pm)
RE: Too many I/O controller patches, Satoshi UCHIDA, (Mon Aug 4, 7:50 pm)
Re: Too many I/O controller patches, Paul Menage, (Mon Aug 4, 10:55 pm)
Re: Too many I/O controller patches, Balbir Singh, (Mon Aug 4, 11:03 pm)
Re: Too many I/O controller patches, Hirokazu Takahashi, (Mon Aug 4, 11:16 pm)
Re: Too many I/O controller patches, Hirokazu Takahashi, (Mon Aug 4, 11:28 pm)
Re: Too many I/O controller patches, Andrea Righi, (Tue Aug 5, 2:27 am)
Re: Too many I/O controller patches, Andrea Righi, (Tue Aug 5, 2:28 am)
Re: Too many I/O controller patches, Andrea Righi, (Tue Aug 5, 2:31 am)
Re: Too many I/O controller patches, Hirokazu Takahashi, (Tue Aug 5, 3:01 am)
Re: [PATCH 4/7] bio-cgroup: Split the cgroup memory subsys ..., Andrea Righi, (Tue Aug 5, 3:25 am)
Re: [PATCH 4/7] bio-cgroup: Split the cgroup memory subsys ..., Hirokazu Takahashi, (Tue Aug 5, 3:35 am)
Re: Too many I/O controller patches, Hirokazu Takahashi, (Tue Aug 5, 5:01 am)
Re: Too many I/O controller patches, Ryo Tsuruta, (Tue Aug 5, 6:17 am)
Re: Too many I/O controller patches, Dave Hansen, (Tue Aug 5, 9:20 am)
Re: Too many I/O controller patches, Dave Hansen, (Tue Aug 5, 9:25 am)
Re: Too many I/O controller patches, KAMEZAWA Hiroyuki, (Tue Aug 5, 7:44 pm)
Re: Too many I/O controller patches, Balbir Singh, (Tue Aug 5, 8:30 pm)
Re: RFC: I/O bandwidth controller, Ryo Tsuruta, (Tue Aug 5, 11:18 pm)
Re: RFC: I/O bandwidth controller, Fernando Luis , (Tue Aug 5, 11:41 pm)
Re: Too many I/O controller patches, Hirokazu Takahashi, (Tue Aug 5, 11:48 pm)
Re: [PATCH 4/7] bio-cgroup: Split the cgroup memory subsys ..., KAMEZAWA Hiroyuki, (Wed Aug 6, 12:54 am)
Re: [PATCH 4/7] bio-cgroup: Split the cgroup memory subsys ..., Hirokazu Takahashi, (Wed Aug 6, 4:43 am)
Re: RFC: I/O bandwidth controller, Dave Hansen, (Wed Aug 6, 8:48 am)
Re: RFC: I/O bandwidth controller, Fernando Luis , (Wed Aug 6, 9:38 pm)
Re: [PATCH 4/7] bio-cgroup: Split the cgroup memory subsys ..., Hirokazu Takahashi, (Thu Aug 7, 12:25 am)
Re: RFC: I/O bandwidth controller, Hirokazu Takahashi, (Thu Aug 7, 1:30 am)
Re: [PATCH 4/7] bio-cgroup: Split the cgroup memory subsys ..., Hirokazu Takahashi, (Thu Aug 7, 1:45 am)
Re: RFC: I/O bandwidth controller, Hirokazu Takahashi, (Thu Aug 7, 11:21 pm)
Re: [PATCH 6/7] bio-cgroup: Implement the bio-cgroup, Takuya Yoshikawa, (Fri Aug 8, 12:10 am)
Re: RFC: I/O bandwidth controller, Ryo Tsuruta, (Fri Aug 8, 12:20 am)
Re: RFC: I/O bandwidth controller, Fernando Luis , (Fri Aug 8, 1:10 am)
Re: [PATCH 6/7] bio-cgroup: Implement the bio-cgroup, Ryo Tsuruta, (Fri Aug 8, 1:30 am)
Re: [PATCH 6/7] bio-cgroup: Implement the bio-cgroup, Takuya Yoshikawa, (Fri Aug 8, 2:42 am)
Re: RFC: I/O bandwidth controller, Ryo Tsuruta, (Fri Aug 8, 3:05 am)
Re: RFC: I/O bandwidth controller, Hirokazu Takahashi, (Fri Aug 8, 4:39 am)
Re: [PATCH 6/7] bio-cgroup: Implement the bio-cgroup, Ryo Tsuruta, (Fri Aug 8, 4:41 am)
Re: RFC: I/O bandwidth controller, Hirokazu Takahashi, (Fri Aug 8, 7:31 am)
Re: RFC: I/O bandwidth controller (was Re: Too many I/O co ..., David Collier-Brown, (Mon Aug 11, 9:35 am)
Re: RFC: I/O bandwidth controller, Fernando Luis , (Mon Aug 11, 10:35 pm)