FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > ArchLinux > ArchLinux General Discussion

 
 
LinkBack Thread Tools
 
Old 06-29-2010, 06:35 PM
Adam Jackson
 
Default anaconda: Disable X server regenerations (#609245)

Otherwise, we lose arbitrary amounts of X server state, since we're not
waiting for metacity before carrying on; and any driver bugs that cause
crashes on regeneration will cause graphical install to fail entirely.

This varies slightly from the usual policy of doing what the installed
system would do, but I'm willing to turn a blind eye. The more correct
fix would be waiting for one of the properties metacity creates to exist
on the root window. This is harder than you think.

Signed-off-by: Adam Jackson <ajax@redhat.com>
---
anaconda | 13 +++++++++++--
1 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/anaconda b/anaconda
index c01260e..0fe26e8 100755
--- a/anaconda
+++ b/anaconda
@@ -36,6 +36,7 @@ from tempfile import mkstemp

# keep up with process ID of the window manager if we start it
wm_pid = None
+xserver_pid = None

# Make sure messages sent through python's warnings module get logged.
def AnacondaShowWarning(message, category, filename, lineno, file=sys.stderr, line=None):
@@ -120,6 +121,7 @@ def set_x_resolution(runres):

def doShutdownX11Actions():
global wm_pid
+ global xserver_pid

if wm_pid is not None:
try:
@@ -128,6 +130,13 @@ def doShutdownX11Actions():
except:
pass

+ if xserver_pid is not None:
+ try:
+ os.kill(xserver_pid, 15)
+ os.waitpid(xserver_pid, 0)
+ except:
+ pass
+
def setupPythonUpdates():
from distutils.sysconfig import get_python_lib

@@ -533,7 +542,6 @@ if __name__ == "__main__":
graphical_failed = 0
vncS = vnc.VncServer() # The vnc Server object.
vncS.anaconda = anaconda
- xserver_pid = None

(opts, args) = parseOptions()

@@ -783,7 +791,8 @@ if __name__ == "__main__":

proc = subprocess.Popen(["Xorg", "-br", "-logfile", "/tmp/X.log",
":1", "vt6", "-s", "1440", "-ac",
- "-nolisten", "tcp", "-dpi", "96"],
+ "-nolisten", "tcp", "-dpi", "96",
+ "-noreset"],
close_fds=True, stdout=xout, stderr=xout,
preexec_fn=preexec_fn)

--
1.7.0.1

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list
 
Old 06-29-2010, 08:01 PM
David Cantrell
 
Default anaconda: Disable X server regenerations (#609245)

Ack and applied. Thanks.

On Tue, 29 Jun 2010, Adam Jackson wrote:


Otherwise, we lose arbitrary amounts of X server state, since we're not
waiting for metacity before carrying on; and any driver bugs that cause
crashes on regeneration will cause graphical install to fail entirely.

This varies slightly from the usual policy of doing what the installed
system would do, but I'm willing to turn a blind eye. The more correct
fix would be waiting for one of the properties metacity creates to exist
on the root window. This is harder than you think.

Signed-off-by: Adam Jackson <ajax@redhat.com>
---
anaconda | 13 +++++++++++--
1 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/anaconda b/anaconda
index c01260e..0fe26e8 100755
--- a/anaconda
+++ b/anaconda
@@ -36,6 +36,7 @@ from tempfile import mkstemp

# keep up with process ID of the window manager if we start it
wm_pid = None
+xserver_pid = None

# Make sure messages sent through python's warnings module get logged.
def AnacondaShowWarning(message, category, filename, lineno, file=sys.stderr, line=None):
@@ -120,6 +121,7 @@ def set_x_resolution(runres):

def doShutdownX11Actions():
global wm_pid
+ global xserver_pid

if wm_pid is not None:
try:
@@ -128,6 +130,13 @@ def doShutdownX11Actions():
except:
pass

+ if xserver_pid is not None:
+ try:
+ os.kill(xserver_pid, 15)
+ os.waitpid(xserver_pid, 0)
+ except:
+ pass
+
def setupPythonUpdates():
from distutils.sysconfig import get_python_lib

@@ -533,7 +542,6 @@ if __name__ == "__main__":
graphical_failed = 0
vncS = vnc.VncServer() # The vnc Server object.
vncS.anaconda = anaconda
- xserver_pid = None

(opts, args) = parseOptions()

@@ -783,7 +791,8 @@ if __name__ == "__main__":

proc = subprocess.Popen(["Xorg", "-br", "-logfile", "/tmp/X.log",
":1", "vt6", "-s", "1440", "-ac",
- "-nolisten", "tcp", "-dpi", "96"],
+ "-nolisten", "tcp", "-dpi", "96",
+ "-noreset"],
close_fds=True, stdout=xout, stderr=xout,
preexec_fn=preexec_fn)




--
David Cantrell <dcantrell@redhat.com>
Red Hat / Honolulu, HI

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list
 
Old 06-30-2010, 08:20 AM
Ales Kozumplik
 
Default anaconda: Disable X server regenerations (#609245)

On 06/29/2010 08:35 PM, Adam Jackson wrote:

Otherwise, we lose arbitrary amounts of X server state, since we're not
waiting for metacity before carrying on; and any driver bugs that cause
crashes on regeneration will cause graphical install to fail entirely.

This varies slightly from the usual policy of doing what the installed
system would do, but I'm willing to turn a blind eye. The more correct
fix would be waiting for one of the properties metacity creates to exist
on the root window. This is harder than you think.

Signed-off-by: Adam Jackson<ajax@redhat.com>


Hi Ajax,


def doShutdownX11Actions():
global wm_pid
+ global xserver_pid

if wm_pid is not None:
try:
@@ -128,6 +130,13 @@ def doShutdownX11Actions():
except:
pass

+ if xserver_pid is not None:
+ try:
+ os.kill(xserver_pid, 15)
+ os.waitpid(xserver_pid, 0)
+ except:
+ pass
+



This is not your fault but the last time doShutdownX11Actions() was
called was in 2006 (a9240ccced95966c0739419b62bce0367f378e40). It should
go. Is that a problem that the X will be staying alive?



proc = subprocess.Popen(["Xorg", "-br", "-logfile", "/tmp/X.log",
+ "-noreset"],


This looks reasonable, I'm just afraid to find out why it isn't so by
default.


Also--the patch needs to be submitted to master too.

Ales

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list
 
Old 06-30-2010, 12:29 PM
David Cantrell
 
Default anaconda: Disable X server regenerations (#609245)

On Wed, 30 Jun 2010, Ales Kozumplik wrote:


On 06/29/2010 08:35 PM, Adam Jackson wrote:

Otherwise, we lose arbitrary amounts of X server state, since we're not
waiting for metacity before carrying on; and any driver bugs that cause
crashes on regeneration will cause graphical install to fail entirely.

This varies slightly from the usual policy of doing what the installed
system would do, but I'm willing to turn a blind eye. The more correct
fix would be waiting for one of the properties metacity creates to exist
on the root window. This is harder than you think.

Signed-off-by: Adam Jackson<ajax@redhat.com>


Hi Ajax,


def doShutdownX11Actions():
global wm_pid
+ global xserver_pid

if wm_pid is not None:
try:
@@ -128,6 +130,13 @@ def doShutdownX11Actions():
except:
pass

+ if xserver_pid is not None:
+ try:
+ os.kill(xserver_pid, 15)
+ os.waitpid(xserver_pid, 0)
+ except:
+ pass
+



This is not your fault but the last time doShutdownX11Actions() was called
was in 2006 (a9240ccced95966c0739419b62bce0367f378e40). It should go. Is that
a problem that the X will be staying alive?


proc = subprocess.Popen(["Xorg", "-br", "-logfile",
"/tmp/X.log",

+ "-noreset"],


This looks reasonable, I'm just afraid to find out why it isn't so by
default.


Also--the patch needs to be submitted to master too.


I only applied it to rhel6-branch, fyi. The patch was not able to cleanly
apply and for master it was even more difficult. Would prefer an updated
patch for master.

--
David Cantrell <dcantrell@redhat.com>
Red Hat / Honolulu, HI

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list
 
Old 10-14-2010, 01:44 PM
Ales Kozumplik
 
Default anaconda: Disable X server regenerations (#609245)

From: Adam Jackson <ajax@redhat.com>

Otherwise, we lose arbitrary amounts of X server state, since we're not
waiting for metacity before carrying on; and any driver bugs that cause
crashes on regeneration will cause graphical install to fail entirely.

This varies slightly from the usual policy of doing what the installed
system would do, but I'm willing to turn a blind eye. The more correct
fix would be waiting for one of the properties metacity creates to exist
on the root window. This is harder than you think.

Signed-off-by: Adam Jackson <ajax@redhat.com>
---
anaconda | 5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/anaconda b/anaconda
index 1db5d50..abaffef 100755
--- a/anaconda
+++ b/anaconda
@@ -539,7 +539,6 @@ if __name__ == "__main__":
graphical_failed = 0
vncS = vnc.VncServer() # The vnc Server object.
vncS.anaconda = anaconda
- xserver_pid = None

(opts, args) = parseOptions()
anaconda.opts = opts
@@ -793,7 +792,8 @@ if __name__ == "__main__":

proc = subprocess.Popen(["Xorg", "-br", "-logfile", "/tmp/X.log",
":1", "vt6", "-s", "1440", "-ac",
- "-nolisten", "tcp", "-dpi", "96"],
+ "-nolisten", "tcp", "-dpi", "96",
+ "-noreset"],
close_fds=True, stdout=xout, stderr=xout,
preexec_fn=preexec_fn)

@@ -801,7 +801,6 @@ if __name__ == "__main__":

os.environ["DISPLAY"] = ":1"
doStartupX11Actions()
- xserver_pid = proc.pid
except (OSError, RuntimeError) as e:
stdoutLog.warning(" X startup failed, falling back to text mode")
anaconda.displayMode = 't'
--
1.7.1.1

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list
 
Old 10-14-2010, 01:48 PM
Chris Lumens
 
Default anaconda: Disable X server regenerations (#609245)

> Otherwise, we lose arbitrary amounts of X server state, since we're not
> waiting for metacity before carrying on; and any driver bugs that cause
> crashes on regeneration will cause graphical install to fail entirely.
>
> This varies slightly from the usual policy of doing what the installed
> system would do, but I'm willing to turn a blind eye. The more correct
> fix would be waiting for one of the properties metacity creates to exist
> on the root window. This is harder than you think.

Is this for f14-branch? I already pushed it to master, so I must assume
so.

- Chris

>
> Signed-off-by: Adam Jackson <ajax@redhat.com>
> ---
> anaconda | 5 ++---
> 1 files changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/anaconda b/anaconda
> index 1db5d50..abaffef 100755
> --- a/anaconda
> +++ b/anaconda
> @@ -539,7 +539,6 @@ if __name__ == "__main__":
> graphical_failed = 0
> vncS = vnc.VncServer() # The vnc Server object.
> vncS.anaconda = anaconda
> - xserver_pid = None
>
> (opts, args) = parseOptions()
> anaconda.opts = opts
> @@ -793,7 +792,8 @@ if __name__ == "__main__":
>
> proc = subprocess.Popen(["Xorg", "-br", "-logfile", "/tmp/X.log",
> ":1", "vt6", "-s", "1440", "-ac",
> - "-nolisten", "tcp", "-dpi", "96"],
> + "-nolisten", "tcp", "-dpi", "96",
> + "-noreset"],
> close_fds=True, stdout=xout, stderr=xout,
> preexec_fn=preexec_fn)
>
> @@ -801,7 +801,6 @@ if __name__ == "__main__":
>
> os.environ["DISPLAY"] = ":1"
> doStartupX11Actions()
> - xserver_pid = proc.pid
> except (OSError, RuntimeError) as e:
> stdoutLog.warning(" X startup failed, falling back to text mode")
> anaconda.displayMode = 't'
> --
> 1.7.1.1
>
> _______________________________________________
> Anaconda-devel-list mailing list
> Anaconda-devel-list@redhat.com
> https://www.redhat.com/mailman/listinfo/anaconda-devel-list

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list
 
Old 10-14-2010, 01:52 PM
Ales Kozumplik
 
Default anaconda: Disable X server regenerations (#609245)

On 10/14/2010 03:48 PM, Chris Lumens wrote:

Otherwise, we lose arbitrary amounts of X server state, since we're not
waiting for metacity before carrying on; and any driver bugs that cause
crashes on regeneration will cause graphical install to fail entirely.

This varies slightly from the usual policy of doing what the installed
system would do, but I'm willing to turn a blind eye. The more correct
fix would be waiting for one of the properties metacity creates to exist
on the root window. This is harder than you think.


Is this for f14-branch? I already pushed it to master, so I must assume
so.



Yes, thats f14.

Ales

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list
 

Thread Tools




All times are GMT. The time now is 10:22 PM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org