From: Paolo 'Blaisorblade' Giarrusso The call to local_save_flags seems bogus since it is followed by local_irq_restore, and it's intended to lock the list from concurrent mconsole_interrupt invocations. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Cc: Jeff Dike Signed-off-by: Andrew Morton --- arch/um/drivers/mconsole_kern.c | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) diff -puN arch/um/drivers/mconsole_kern.c~uml-local_irq_save-not-local_save_flags arch/um/drivers/mconsole_kern.c --- 25/arch/um/drivers/mconsole_kern.c~uml-local_irq_save-not-local_save_flags Fri Apr 7 15:22:53 2006 +++ 25-akpm/arch/um/drivers/mconsole_kern.c Fri Apr 7 15:22:53 2006 @@ -62,7 +62,7 @@ static void mc_work_proc(void *unused) unsigned long flags; while(!list_empty(&mc_requests)){ - local_save_flags(flags); + local_irq_save(flags); req = list_entry(mc_requests.next, struct mconsole_entry, list); list_del(&req->list); _