lkml.org 
[lkml]   [2000]   [Mar]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Low latency and fbcon [0.5 sec is not considered low latency] [Re: new IRQ scalability changes in 2.3.48]
    Hi!

    > > I tried doing something similar for fbcon, but could not. fbcon is by
    > > far worst offender, and will happily block system for 500msec. if
    > > (need_resched) schedule() does not work here. I tried adding
    > > semaphores around fbcon entry points, but it does not seem to work.
    >
    > i know about fbcon's latency problems, have you tried fixing the
    > screen-scrolling function? It's by far the worst offender. Another
    > function: if your card does bitblt and the bitblt command is posted to the
    > videocard then typically the code polls the videocard status register to
    > wait for the bitblt to finish - that can be long as well.

    I already know offenders, I just don't know how to fix them.

    > a semaphore plus a conditional reschedule in the above two places should
    > already help. (also the semaphore has to be try_down_semaphore()-ed from
    > the kernel-message function, because we obviously must not block in IRQ
    > contexts which call printk.)
    >
    > > (I replaced if (need_resched) schedule() with just schedule() -- I
    > > hope that can not break anything...)
    >
    > you have to add the semaphore (or semaphores) to the generic console code
    > to be safe. The console code assumes that the individual lowlevel console
    > functions are atomic (well, most of them). You should also probably
    > boost

    Oops, that's the trick. I added semaphore on fbcon layer -- which is
    probably bad idea.

    > the priority of the process holding this semaphore to the highest
    > user-priority, otherwise console output can be blocked by normal
    > processes. (If you manage to get this working, i'd be very interested in
    > it.)

    I'll try it again.
    Pavel
    --
    The best software in life is free (not shareware)! Pavel
    GCM d? s-: !g p?:+ au- a--@ w+ v- C++@ UL+++ L++ N++ E++ W--- M- Y- R+

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.rutgers.edu
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:57    [W:4.064 / U:0.136 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site