All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pavel Machek <pavel@ucw.cz>
To: Bernie Thompson <bernie@plugable.com>
Cc: roberto@unbit.it, gregkh@suse.de, Cyril Hrubis <metan@ucw.cz>,
	kernel list <linux-kernel@vger.kernel.org>
Subject: Re: staging: udlfb -- staging version does not work, external does
Date: Sun, 11 Apr 2010 19:18:56 +0200	[thread overview]
Message-ID: <20100411171856.GA24163@elf.ucw.cz> (raw)
In-Reply-To: <p2s480988181004111005kdeb479ddzd3719799f140f4a9@mail.gmail.com>

On Sun 2010-04-11 10:05:12, Bernie Thompson wrote:
> Roberto - why would any mmap'd writes get immediately displayed on the
> older code?  I wouldn't expect that.
> 
> I'm assuming this is mmio path, and that there's no triggers for
> repaint in the older code?
> 
> Pavel - the issue for mmio access is when to trigger repaint.

I'm not doing any memory mapped access (that's what mmio means,
right?). I even checked with strace -- cat uses plain old
read()/write() syscalls.

cat /bin/bash > /dev/fb1

(can you try it on your system? do we agree that it should fill cca
half of screen with noise?)

> Repainting the entire screen is extremely expensive, and mmio doesn't
> have any built-in trigger point.  This issue is what the whole defio
> circus (page-fault based trigger) has been about for the last few
> months.  Some history at:  http://plugable.com/category/project/udlfb/

Ok, I'll take a look.... ...

   Todo

(this should really go to udlfb/TODO).

  ...
     * Disable defio by default, unfortunately, because of several
bugs without obvious solutions
          * rendering problems with pages (lines) that no longer get
updated - writes to those are
            no longer triggering deferred processing
          * When running 2 USB adapters, dirty pages for one instance
seem to affect the other, and
            vice versa (udlfb has no common state, so appears to be in
defio or mmu handling)
          * cases where we hit a kernel oops in the deferred io
handler when it tries to touch the
            pages it's been asked to handle.
  ...

Aha, so this one is even known. How do I re-enable defio support, so
that it can be debugged?

And... can we do something stupid like full repaint once a second to
get basically working driver?

									Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

  parent reply	other threads:[~2010-04-11 17:18 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20100411072625.GA9926@elf.ucw.cz>
     [not found] ` <n2g480988181004110742w2ce92bfdr4f0f01216f879fe8@mail.gmail.com>
2010-04-11 15:07   ` staging: udlfb -- staging version does not work, external does Pavel Machek
2010-04-11 16:42   ` Pavel Machek
2010-04-11 17:01     ` Bernie Thompson
2010-04-11 17:05       ` Pavel Machek
     [not found]   ` <20100411170117.GA22007@elf.ucw.cz>
     [not found]     ` <p2s480988181004111005kdeb479ddzd3719799f140f4a9@mail.gmail.com>
2010-04-11 17:18       ` Pavel Machek [this message]
2010-04-13  0:44         ` Bernie Thompson
2010-04-11 17:36       ` Pavel Machek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20100411171856.GA24163@elf.ucw.cz \
    --to=pavel@ucw.cz \
    --cc=bernie@plugable.com \
    --cc=gregkh@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=metan@ucw.cz \
    --cc=roberto@unbit.it \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.