Messages in this thread |  | | Date | Tue, 16 Nov 2010 20:31:48 -0500 | | From | Kyle McMartin <> | | Subject | Re: [RFC/RFT PATCH v3] sched: automated per tty task groups |
| |
Hi Mike,
On Mon, Nov 15, 2010 at 02:25:50PM -0700, Mike Galbraith wrote: > --- linux-2.6.orig/drivers/tty/tty_io.c > +++ linux-2.6/drivers/tty/tty_io.c > @@ -3160,6 +3160,7 @@ static void __proc_set_tty(struct task_s > put_pid(tsk->signal->tty_old_pgrp); > tsk->signal->tty = tty_kref_get(tty); > tsk->signal->tty_old_pgrp = NULL; > + sched_autogroup_create_attach(tsk); > } >
This is a bit of a problem, as it's called in_atomic context and kmalloc's under GFP_KERNEL (which can sleep.) This results in sleep-under-spinlock prints when CONFIG_DEBUG_SPINLOCK_SLEEP=y.
I spent a bit of time thinking about how to fix that, but it's a bit difficult because of the nested spin_lock_irq in that bit of the tty_ioctl callchain.
I'll think about it some more tonight and follow-up if I can think of a way to fix it.
regards, Kyle
|  |