Re: Fall back drivers?

2004-02-03 Thread Mike A. Harris
On Sat, 31 Jan 2004, Jerry Haltom wrote:

I've been thinking about how to make X more userfriendly.

Driver nvidia,vesa

Is a line like this possible, or could it be a good suggestion to
implement? It would allow fallback from one driver to another in case
the first doesn't function. One of the main complaints I've been hearing
from various people I'm working with is how X doens't Just Work. In
that you can plug it in, and see a screen. Certainly most of this is up
to the fault of the packager, but some of it is because they'res some
things the packager would need to work around that are difficult, such
as detecting that X failed to launch, so switching it to vesa mode and
trying again.

Generally, either a driver works or doesn't work.  For cases 
of doesn't work, the server either dies and you're dropped back 
to the prompt if you're lucky, or you might have corrupted video 
which is not restoreable, and you're dumped back to the prompt 
and can't see what you're typing, or, your entire machine is 
hard locked and you have to hit the reset button.  The other 
doesn't work scenario, is that the X server does start ok, the 
video driver has screen corruption of some kind, and the server 
has no idea that something is wrong.  In this case, there's no 
way for the server to ever be able to know what's wrong.

For cases of works, well...  it works.

The problem is that there's either:

1) no way to autodetect most if not all of the various failure
   cases I outlined above.

or

2) If you could autodetect a failure case, in most cases the 
   video is hosed and requires a hardware reset anyway, which 
   requires a reboot.

or

3) The hardware is totally locked, and not recoverable.


There's not very many cases I can think of in which the X server
could start up with one video driver, detect some failure mode, 
and fallback to the vesa or other driver easily.  There are a 
few scenarios, however the number of useful cases this would 
allow the server to start for, compared to the end user confusion 
that might result, would make it not worth it IMHO.

My personal opinion, is that the rest of the OS should provide a 
mechanism for detecting the cases where the X server dies 
immediately, such as a SEGV, and then tries to start a 
minimal preconfigured safe mode of sorts.  This could be done 
using a driver based-upon the vesa driver.  Something akin to 
Microsoft's VGASAVE driver used in Windows' safe-mode.

Just a thought.



-- 
Mike A. Harris

___
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel


Fall back drivers?

2004-01-31 Thread Jerry Haltom
I've been thinking about how to make X more userfriendly.

Driver nvidia,vesa

Is a line like this possible, or could it be a good suggestion to
implement? It would allow fallback from one driver to another in case
the first doesn't function. One of the main complaints I've been hearing
from various people I'm working with is how X doens't Just Work. In
that you can plug it in, and see a screen. Certainly most of this is up
to the fault of the packager, but some of it is because they'res some
things the packager would need to work around that are difficult, such
as detecting that X failed to launch, so switching it to vesa mode and
trying again.

-- 
Jerry Haltom [EMAIL PROTECTED]
Feedback Plus, Inc.


signature.asc
Description: This is a digitally signed message part


Re: Fall back drivers?

2004-01-31 Thread Jerry Haltom
Ahh! I hadn't checked any of the work in 4.4 before I came up with this
idea. This is wonderful.

What about in the case of a broken driver where the X server is unable
to start? One of the main problems I've seen Is when somebody breaks
their X config, either by running some driver installation
(nvidia-installer yay!) or recompiling their kernel and leaving off a
third party module results in a non working X. Users would definitely
would rather be at a 640x480 display running in 16 colors than a login
console prompt. Or at least this is my assumption: power users are more
than welcome to do whatever they want.

On Sat, 2004-01-31 at 14:06, David Dawes wrote:
 On Sat, Jan 31, 2004 at 01:41:45PM -0600, Jerry Haltom wrote:
 I've been thinking about how to make X more userfriendly.
 
 Driver nvidia,vesa
 
 Is a line like this possible, or could it be a good suggestion to
 implement? It would allow fallback from one driver to another in case
 the first doesn't function. One of the main complaints I've been hearing
 from various people I'm working with is how X doens't Just Work. In
 that you can plug it in, and see a screen. Certainly most of this is up
 to the fault of the packager, but some of it is because they'res some
 things the packager would need to work around that are difficult, such
 as detecting that X failed to launch, so switching it to vesa mode and
 trying again.
 
 The automatic configuration support (that is, the ability to use
 the XFree86 server without an XF86Config file) that I added for
 4.4 has a fallback mechanism something like this.  It tries the
 auto-detected chipset-specific driver first (if there is one), then
 falls back to the vesa, fbdev, or vga drivers.  I have since made
 some improvements to the fallback mechanism, but they were done
 too late to get into 4.4.
 
 The main goal of this automatic configuration is that a user can get
 a usable screen up and running without any manual intervention.
 
 David

___
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel


Re: Fall back drivers?

2004-01-31 Thread David Dawes
On Sat, Jan 31, 2004 at 05:32:33PM -0600, Jerry Haltom wrote:
Ahh! I hadn't checked any of the work in 4.4 before I came up with this
idea. This is wonderful.

What about in the case of a broken driver where the X server is unable
to start? One of the main problems I've seen Is when somebody breaks
their X config, either by running some driver installation
(nvidia-installer yay!) or recompiling their kernel and leaving off a
third party module results in a non working X. Users would definitely
would rather be at a 640x480 display running in 16 colors than a login
console prompt. Or at least this is my assumption: power users are more
than welcome to do whatever they want.

A configuration file, even if broken, completely overrides the automatic
mechanism.  However, if the user finds that their configuration file is
broken, they can revert to the automatic method by either removing/renaming
the broken file, or specifying a non-existent file with the
'-xf86config no-such-file' command line option.  (I'm going to add a
'-auto' option to provide a cleaner way of saying that you want to ignore
an existing config file and use automatic configuration instead.)

The improved fallback mechanism I mentioned could be extended so that it
is available in your example, not just the auto-config case.  That's a
good idea.

David
-- 
David Dawes
developer/release engineer  The XFree86 Project
www.XFree86.org/~dawes
___
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel


Re: Fall back drivers?

2004-01-31 Thread Thomas Winischhofer
Jerry Haltom wrote:
Ahh! I hadn't checked any of the work in 4.4 before I came up with this
idea. This is wonderful.
What about in the case of a broken driver where the X server is unable
to start? 
I don't know of any driver that is broken in a way that keeps XFree86 
from starting. How the display looks is a different story, though (and 
this case can hardly be detected)

 One of the main problems I've seen Is when somebody breaks
their X config, either by running some driver installation
(nvidia-installer yay!) or recompiling their kernel and leaving off a
third party module results in a non working X. 
I don't know how far David has come, but I think that would be possible. 
PreInit() already returns a Bool, so it should be easy to fall back at 
that stage. The same basically applies to ScreenInit().

 Users would definitely
would rather be at a 640x480 display running in 16 colors than a login
console prompt. 
Frankly, I don't think a 16 color 640x480 display is helpful as long as 
there is no GUI killer-tool for reconfiguring XFree86 for this kind of 
users. (Such users presumably also run KDE or Gnome, and at least KDE 
does not like 16 colors that much...)

But anyway, the fallback idea is a good one IMHO.

Thomas

--
Thomas Winischhofer
Vienna/Austria
thomas AT winischhofer DOT net  http://www.winischhofer.net/
twini AT xfree86 DOT org
___
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel


Re: Fall back drivers?

2004-01-31 Thread David Dawes
On Sun, Feb 01, 2004 at 01:13:49AM +0100, Thomas Winischhofer wrote:
Jerry Haltom wrote:
 Ahh! I hadn't checked any of the work in 4.4 before I came up with this
 idea. This is wonderful.
 
 What about in the case of a broken driver where the X server is unable
 to start? 

I don't know of any driver that is broken in a way that keeps XFree86 
from starting. How the display looks is a different story, though (and 
this case can hardly be detected)

I think it is more likely configuration errors (including XF86Config
syntax errors), or the requested driver not existing.

  One of the main problems I've seen Is when somebody breaks
 their X config, either by running some driver installation
 (nvidia-installer yay!) or recompiling their kernel and leaving off a
 third party module results in a non working X. 

I don't know how far David has come, but I think that would be possible. 
PreInit() already returns a Bool, so it should be easy to fall back at 
that stage. The same basically applies to ScreenInit().

The code in the current CVS just uses Probe() failure.  The newer
version, not in CVS yet, handles PreInit() failure too.  ScreenInit()
failures should be rare, but could be handled.

Frankly, I don't think a 16 color 640x480 display is helpful as long as 
there is no GUI killer-tool for reconfiguring XFree86 for this kind of 
users. (Such users presumably also run KDE or Gnome, and at least KDE 
does not like 16 colors that much...)

The longer term goal is that configuration be handled at runtime
from such a tool, but in the meantime the vesa fallback usually
gives you a usable display (better than 4-bit 640x480).

David
-- 
David Dawes
developer/release engineer  The XFree86 Project
www.XFree86.org/~dawes
___
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel