Messages in this thread | | | Date | Fri, 1 Jun 2007 22:36:42 +0400 | From | Oleg Nesterov <> | Subject | Re: floppy.c soft lockup |
| |
On 06/01, Mark Hounschell wrote: > > Oleg Nesterov wrote: > > > > Could you apply the trivial patch below, and change the i/o thread to do > > > > prctl(1234); // hangs ??? > > printf(something); > > ioctl(Q->DevSpec1, FDSETPRM, &medprm); // this hangs > > > > to see if prctl() hangs or not? This way we can narrow the problem. > > (of course, you can just kill the above ioctl() if this is possible). > > > > Thanks! > > > > Oleg. > > > > --- OLD/kernel/sys.c~ 2007-04-03 13:05:02.000000000 +0400 > > +++ OLD/kernel/sys.c 2007-06-01 18:56:22.000000000 +0400 > > @@ -2147,6 +2147,11 @@ asmlinkage long sys_prctl(int option, un > > { > > long error; > > > > + if (option == 1234) { > > + flush_scheduled_work(); > > + return 0; > > + } > > + > > error = security_task_prctl(option, arg2, arg3, arg4, arg5); > > if (error) > > return error; > > > > - > > > Ok the prctl never returned. I just replaced the ioctl with it and added > a printf before and after. I only get the one before. The thread is hung > at this point just as if I'd done the ioctl?
Thanks. So we can rule out floppy.c. flush_scheduled_work/flush_workqueue is broken by this RT application. Imho, this is not the kernel problem.
Now I am very sure that the initial suspect was correct: cpu starvation. I can cook a debug patch to be 100% sure tomorrow, which kernel version is most convenient to you?
Oleg.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |