lkml.org 
[lkml]   [1998]   [Jun]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: Resume/Suspend (was Re: LVM / Filesystems / High availability
Date
> From: "Jon M. Taylor" <taylorj@ecs.csus.edu>
> Date: Tue, 23 Jun 1998 16:10:43 -0700 (PDT)
> Subject: Re: Resume/Suspend (was Re: LVM / Filesystems / High availabil=
> ity)
>
> On Wed, 24 Jun 1998, Magnus Redin wrote:
>
> >=20
> > > Hey, there's a thought! That is a good idea.Almost mainframe like in
> > > recovery... X is a no-go with this, though. You need to save the
> > > complete state of a SVGA card. Thoughts?

> > It should be enough to ask the X-server to redraw the screen.

> Nope, that is not enough with most SVGA cards. Since many VGA
> registers are write-only, X has to keep softcopies of those regs in order
> to be kept aware of exactly what state the video hardware is in. If you
> checkpoint the X server, run some other video card banging program like
> SVGALib or Suid-KGI or even another X server, and then restart the old
> X
> server, its register softcopies may not any longer correspond to the
> actual state of the hardware = problems.

I frequently have X sitting in the background, accessing it a couple
of times a day, and occasionally a SVGAlib program crashes badly,
totally screwing up the VC's.
However, when I switch back to X, it all sorts it'self out.
So, either X is storing state in a write-only part of the card, and
using some sort of "switch registers", to switch to alternate registers, or
it's keeping track of what state it thinks the card is in, and rewriting
that when it restarts.
I don't see how checkpointing is any different to the X server than
starting an SVGAlib app that eats all memory, causes the X server to get
totally swapped out, and then crashes without restoring the state.


> There is also the issue of atomicity of accelerator commands - a
> lot of cards don't take well to being interrupted whilst their accel
> command FIFOs are half full of command words. Even if the next bit of

Again, AFAIK, you can still run SVGAlib programs on accellerated X
servers, without totally crashing it, so something must be there.

I can only assume from this that when X is asked to redraw the screen from
cold, as in when switching to that VC, it rewrites all the write-only
registers.
This would seem to be supported by the fact that changing text mode settings
(SVGAtextmode), switching to the X server, and back again leaves you with
the original settings when the X server was started.

I don't think X is a showstopper, is there anything else that anyone
can see that would make this idea unfeasible?


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu

\
 
 \ /
  Last update: 2005-03-22 13:43    [from the cache]
©2003-2011 Jasper Spaans