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

[dm-devel] Re: [PATCH 6/7] bio-cgroup: Implement the bio-cgroup

Hi Tsuruta-san,

Ryo Tsuruta wrote:
Hi Yoshikawa-san,

+static void bio_cgroup_move_task(struct cgroup_subsys *ss,
+				struct cgroup *cont,
+				struct cgroup *old_cont,
+				struct task_struct *p)
+	struct mm_struct *mm;
+	struct bio_cgroup *biog, *old_biog;
+	if (bio_cgroup_disabled())
+		return;
+	mm = get_task_mm(p);
+	if (mm == NULL)
+		return;
+	biog = cgroup_bio(cont);
+	old_biog = cgroup_bio(old_cont);
+	mmput(mm);
+	return;
Is this function fully implemented?

This function can be more simplified, there is some unnecessary code from old version.

I think it is neccessary to attach the task p to new biog.

I tried to put a process into a group by writing to
"/cgroup/bio/BGROUP/tasks" but failed.

Could you tell me what you actually did? I will try the same thing.

Ryo Tsuruta <ryov valinux co jp>

I wanted to test my own scheduler which uses bio tracking information.
SO I tried your patch, especially, get_bio_cgroup_iocontext(), to get
the io_context from bio.

In my test, I made some threads with certain iopriorities run concurrently. To schedule these threads based on their iopriorities,
I made BGROUP directories for each iopriorities.
e.g. /cgroup/bio/be0 ... /cgroup/bio/be7
Then, I tried to attach the processes to the appropriate groups.

But the processes stayed in the original group(id=0).

I am sorry but I have to leave now and I cannot come here next week.
--> I will take summer holidays.

I will reply to you later.

- Takuya Yoshikawa

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