All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Antonino A. Daplas" <adaplas@gmail.com>
To: Geert Uytterhoeven <Geert.Uytterhoeven@sonycom.com>
Cc: linux-fbdev-devel@lists.sourceforge.net,
	Geoff Levand <geoffrey.levand@am.sony.com>
Subject: Re: unregister_framebuffer() and cursor
Date: Sat, 26 May 2007 05:25:09 +0800	[thread overview]
Message-ID: <1180128309.4627.10.camel@daplas> (raw)
In-Reply-To: <Pine.LNX.4.62.0705251201460.2657@pademelon.sonytel.be>

On Fri, 2007-05-25 at 12:13 +0200, Geert Uytterhoeven wrote:
> On Fri, 4 May 2007, Antonino A. Daplas wrote:
> > On Fri, 2007-05-04 at 10:50 +0200, Geert Uytterhoeven wrote:
> > > It looks like unregister_framebuffer() doesn't cause fbcon_del_cursor_timer()
> > > to be called.
> > > 
> > > Hence if cursor_timer_handler() runs, it will try to schedule work on
> > > fb_info.queue, which is no longer valid, and queue_work() will BUG_ON().
> > > 
> > > Or am I missing something?
> > 
> > The console cursor is not part of fbdev.  fbcon_del_cursor_timer() is
> > done in fbcon_exit() in fbcon.c. You cannot (or, rather, should not)
> > call unregister_framebuffer() unless fbcon unbinds the underlying
> > driver.
> 
> Indeed, when unbinding the console first using
> 
>     echo 0 > /sys/class/vtconsole/vtcon1/bind
>     
> the problem no longer happens on halt (Geoff: and ps3-hack-fbcon-shutdown.diff
> is no longer needed).
> 
> However there are still a few remaining issues:
>   - unbinding requires CONFIG_VT_HW_CONSOLE_BINDING=y,
>   - unbinding can be done using sysfs only (for now),
>   - worse, unbinding may fail, e.g. if the console is in graphics mode due to
>     running X.
> 
> Our problem is that we have to shutdown ps3fb on reboot/kexec, to release the
> hypervisor resources used by ps3fb. If unbinding fails, we cannot do that.

Both you and drmfb has the same problem, and Jesse submitted a patch
that will unbind fbcon prior to unregister_framebuffer(). The patch
needs a few tweaks but is fine by me in principle.

Search lkml for [PATCH 1/3] allow console unregistration.

As for the first, maybe a 

'select VT_HW_CONSOLE_BINDING if FRAMEBUFFER_CONSOLE' under ps3fb?

As for the second and third concerns, Jesse's patch would take care of
that.

Tony



-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/

      reply	other threads:[~2007-05-25 21:25 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-05-04  8:50 unregister_framebuffer() and cursor Geert Uytterhoeven
2007-05-04  9:42 ` Antonino A. Daplas
2007-05-25 10:13   ` Geert Uytterhoeven
2007-05-25 21:25     ` Antonino A. Daplas [this message]

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=1180128309.4627.10.camel@daplas \
    --to=adaplas@gmail.com \
    --cc=Geert.Uytterhoeven@sonycom.com \
    --cc=geoffrey.levand@am.sony.com \
    --cc=linux-fbdev-devel@lists.sourceforge.net \
    /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.