Stuart pointed me that the hang is made by a function in uvideo.c:

if (SIMPLEQ_EMPTY(&sc->sc_mmap_q)) {
        /* mmap queue is empty, block until first frame is queued */
        error = tsleep(sc, 0, "vid_mmap", 10 * hz);
        if (error)
                return (EINVAL);
                                                                                
}


But I don't know anything about system calls and kernel internals.
And the only queue I understand is supermarket's.

Some video expert will take a look if it's worth. ;-)


Thanks!

Reply via email to