[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xorg-server: Changes to 'ubuntu'



 debian/changelog              |   12 +
 debian/local/xserver-xephyr.1 |  342 ++++++++++++++++++++++++++++++++++++++++++
 debian/local/xvfb-run         |   38 +++-
 debian/local/xvfb-run.1       |   12 +
 debian/rules                  |    1 
 debian/xserver-xephyr.install |    1 
 6 files changed, 394 insertions(+), 12 deletions(-)

New commits:
commit 87c7469bfc002b6d93d64624ace71d151ee7385b
Author: Bryce Harrington <bryce@bryceharrington.org>
Date:   Thu Apr 2 23:58:11 2009 -0700

    Add Xephyr man page

diff --git a/debian/changelog b/debian/changelog
index d13b6c8..b584bac 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,11 +1,14 @@
 xorg-server (2:1.6.0-0ubuntu9) jaunty; urgency=low
 
-  * debian/local/xvfb-run: Fixes race condition with concurrent invocations
+  * local/xvfb-run: Fixes race condition with concurrent invocations
     (LP: #348052)
-  * debian/local/xvfb-run, xvfb-run.1: Add correct docs about error codes
+  * local/xvfb-run, xvfb-run.1: Add correct docs about error codes
     (LP: #328205)
+  * local/xserver-xephyr.1, rules, xserver-xephyr.install: Add man page
+    for xephyr
+    (LP: #134906)
 
- -- Bryce Harrington <bryce@ubuntu.com>  Wed, 01 Apr 2009 20:35:36 -0700
+ -- Bryce Harrington <bryce@ubuntu.com>  Wed, 01 Apr 2009 20:37:22 -0700
 
 xorg-server (2:1.6.0-0ubuntu8) jaunty; urgency=low
 
diff --git a/debian/local/xserver-xephyr.1 b/debian/local/xserver-xephyr.1
new file mode 100644
index 0000000..2f55cec
--- /dev/null
+++ b/debian/local/xserver-xephyr.1
@@ -0,0 +1,342 @@
+.\" ."
+.\" ." Copyright (c) Matthieu Herrb <matthieu@herrb.eu>
+.\" ."
+.\" ." Permission to use, copy, modify, and distribute this software for any
+.\" ." purpose with or without fee is hereby granted, provided that the above
+.\" ." copyright notice and this permission notice appear in all copies.
+.\" ."
+.\" ." THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+.\" ." WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+.\" ." MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+.\" ." ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+.\" ." WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+.\" ." ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+.\" ." OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+.\" ."
+.TH "Xephyr" "1" "" "Matthew Allum" "xserver-xephyr"
+.SH "NAME"
+Xephyr \- X server outputting to a window on a pre\-existing X display
+.SH "SYNOPSIS"
+.B Xephyr
+.RI [\fB:\fP display ]
+.RI [ option
+.I R ... ]
+.SH "DESCRIPTION"
+.B Xephyr is a kdrive server that outputs to a window on a pre\-existing
+"host" X display.  Think Xnest but with support for modern extensions like composite, damage and randr.
+.PP 
+Unlike Xnest which is an X proxy, i.e. limited to the capabilities of the host X server, Xephyr is a real X server which uses the host X server window as "framebuffer" via fast SHM XImages.
+.PP 
+It also has support for "visually" debugging what the server is
+.br 
+painting.
+.SH "OPTIONS"
+.TP 
+.BI \-a #
+Mouse acceleration (pixels)
+.TP 
+.BI \-ac
+Disable access control restrictions
+.TP 
+.BI \-audit " int
+Set audit trail level
+.TP 
+.BI \-auth " file
+Select authorization file
+.TP 
+.BI \-br
+Create root window with black background
+.TP 
+.BI +bs
+Enable any backing store support
+.TP 
+.BI \-bs
+Disable any backing store support
+.TP 
+.BI \-c
+Turns off key\-click
+.TP 
+.BI c #
+Key\-click volume (0\-100)
+.TP 
+.BI \-cc int
+Default color visual class
+.TP 
+.BI \-core
+Generate core dump on fatal error
+.TP 
+.BI \-dpi int
+Screen resolution in dots per inch
+.TP 
+.BI dpms
+Enables VESA DPMS monitor control
+.TP 
+.BI \-dpms
+Disables VESA DPMS monitor control
+.TP 
+.BI \-deferglyphs [none|all|16]
+Defer loading of [no|all|16\-bit] glyphs
+.TP 
+.BI \-f #
+Bell base (0\-100)
+.TP 
+.BI \-fc " <string>
+Cursor font
+.TP 
+.BI \-fn " <string>
+Default font name
+.TP 
+.BI \-fp " <string>
+Default font path
+.TP 
+.BI \-help
+Prints message with these options
+.TP 
+.BI \-I
+Ignore all remaining arguments
+.TP 
+.BI \-ld int
+Limit data space to N Kb
+.TP 
+.BI \-lf int
+Limit number of open files to N
+.TP 
+.BI \-ls int
+Limit stack space to N Kb
+.TP 
+.BI \-logo
+Enable logo in screen saver
+.TP 
+.BI nologo
+Disable logo in screen saver
+.TP 
+.BI \-nolisten string
+Do not listen on protocol
+.TP 
+.BI \-noreset
+Do not reset after last client exists
+.TP 
+.BI \-reset
+Reset after last client exists
+.TP 
+.BI \-p #
+Screen\-saver pattern duration (minutes)
+.TP 
+.BI \-pn
+Accept failure to listen on all ports
+.TP 
+.BI \-nopn
+Reject failure to listen on all ports
+.TP 
+.BI \-r
+Turns off auto\-repeat
+.TP 
+.BI r
+Turns on auto\-repeat
+.TP 
+.BI \-render [default|mono|gray|color]
+Set render color alloc policy
+.TP 
+.BI \-retro
+Start with classic stipple and cursor
+.TP 
+.BI \-s #
+Screen\-saver timeout (minutes)
+.TP 
+.BI \-t #
+Mouse threshold (pixels)
+.TP 
+.BI \-terminate
+Terminate at server reset
+.TP 
+.BI \-to #
+Connection time out
+.TP 
+.BI \-tst
+Disable testing extensions
+.TP 
+.BI ttyxx
+Server started from init on /dev/ttyxx
+.TP 
+.BI v
+Video blanking for screen\-saver
+.TP 
+.BI \-v
+Screen\-saver without video blanking
+.TP 
+.BI \-wm
+WhenMapped default backing\-store
+.TP 
+.BI \-wr
+Create root window with white background
+.TP 
+.BI \-x string
+Loads named extension at init time
+.TP 
+.BI \-maxbigreqsize
+Set maximal bigrequest size
+.TP 
+.BI +xinerama
+Enable XINERAMA extension
+.TP 
+.BI \-xinerama
+Disable XINERAMA extension
+.TP 
+.BI \-dumbSched
+Disable smart scheduling, enable old behavior
+.TP 
+.BI \-schedInterval int
+Set scheduler interval in msec
+.TP 
+.BI +extension name
+Enable extension
+.TP 
+.BI \-extension name
+Disable extension
+.TP 
+.BI \-query host\-name
+Contact named host for XDMCP
+.TP 
+.BI \-broadcast
+Broadcast for XDMCP
+.TP 
+.BI \-multicast [addr [hops]]
+IPv6 multicast for XDMCP
+.TP 
+.BI \-indirect " <host\-name>
+Contact named host for indirect XDMCP
+.TP 
+.BI \-port port\-num
+UDP port number to send messages to
+.TP 
+.BI \-from local\-address
+Specify the local address to connect from
+.TP 
+.BI \-once
+Terminate server after one session
+.TP 
+.BI \-class display\-class
+Specify display class to send in manage
+.TP 
+.BI \-cookie xdm\-auth\-bits
+Specify the magic cookie for XDMCP
+.TP 
+.BI \-displayID display\-id
+Manufacturer display ID for request
+.TP 
+.BI \-kb
+Disable the X Keyboard Extension
+.TP 
+.BI +kb
+Enable the X Keyboard Extension
+.TP 
+.BI [+\-]accessx [ timeout [ timeout_mask [ feedback [ options_mask] ] ] ]
+Enable/disable accessx key sequences
+.TP 
+.BI \-ardelay
+Set XKB autorepeat delay
+.TP 
+.BI \-arinterval
+Set XKB autorepeat interval
+.SH "TINYX DEVICE DEPENDENT USAGE"
+.TP 
+.BI \-card pcmcia
+Use PCMCIA card as additional screen
+.TP 
+\-screen WIDTH[/WIDTHMM]xHEIGHT[/HEIGHTMM][@ROTATION][X][Y]
+[xDEPTH/BPP{,DEPTH/BPP}[xFREQ]]
+.br 
+Specify screen characteristics
+.TP 
+.BI \-rgba rgb/bgr/vrgb/vbgr/none
+Specify subpixel ordering for LCD panels
+.TP 
+.BI \-mouse driver [,n,,options]
+Specify the pointer driver and its options (n is the number of buttons)
+.TP 
+.BI \-keybd driver [,,options]
+Specify the keyboard driver and its options
+.TP 
+.BI \-zaphod
+Disable cursor screen switching
+.TP 
+.BI \-2button
+Emulate 3 button mouse
+.TP 
+.BI \-3button
+Disable 3 button mouse emulation
+.TP 
+.BI \-rawcoord
+Do not transform pointer coordinates on rotation
+.TP 
+.BI \-dumb
+Disable hardware acceleration
+.TP 
+.BI \-softCursor
+Force software cursor
+.TP 
+.BI \-videoTest
+Start the server, pause momentarily and exit
+.TP 
+.BI \-origin " X,Y
+Locates the next screen in the the virtual screen (Xinerama)
+.TP 
+.BI \-switchCmd
+Command to execute on vt switch
+.TP 
+.BI \-zap
+Terminate server on Ctrl+Alt+Backspace 
+.TP 
+.BI vtxx
+Use virtual terminal xx instead of the next available
+.SH "XEPHYR OPTION USAGE"
+.TP 
+.BI \-parent " <XID>
+Use existing window as Xephyr root win
+.TP 
+.BI \-host\-cursor
+Re\-use exisiting X host server cursor
+.TP 
+.BI \-fullscreen
+Attempt to run Xephyr fullscreen
+.TP 
+.BI \-grayscale
+Simulate 8bit grayscale
+.TP 
+.BI \-fakexa
+Simulate acceleration using software rendering
+.TP 
+.BI \-verbosity " <level>
+Set log verbosity level
+.TP 
+.BI \-nodri
+Do not use DRI
+.TP 
+.BI \-noxv
+Do not use XV
+.TP 
+.BI \-name " [name]
+Define the name in the WM_CLASS property
+.SH "SIGNALS"
+Send a SIGUSR1 to the server (e.g. pkill \-USR1 Xephyr) to toggle the debugging mode.
+In this mode red rectangles are painted to screen areas getting painted before painting the actual content.  The delay between this can be altered by setting a XEPHYR_PAUSE env var to a value in micro seconds.
+.SH "CAVEATS"
+.TP 
+Rotated displays are currently updated via full blits. This is slower than a normal orientated display. Debug mode will therefore not be of much use rotated.
+.TP 
+The \fB\-host\-cursor\fR cursor is static in its appearance.
+.TP 
+The build gets a warning about \fBnanosleep\fR. I think the various \fB\-D\fR build flags are causing this. I have not figured as yet how to work round it. It does not appear to break anything however.
+.TP 
+Keyboard handling is basic but works.
+.TP 
+Mouse button 5 probably wont work.
+.SH "SEE ALSO"
+X(7), Xserver(1), xdm(1), xinit(1), xorg.conf(5), xorgconfig(1), xorgcfg(1), xvidtune(1), apm(4), ati(4), chips(4), cirrus(4), cyrix(4), fbdev(4), glide(4),  glint(4),  i128(4), i740(4), i810(4), imstt(4), mga(4), neomagic(4), nsc(4), nv(4), r128(4), rendition(4), s3virge(4), siliconmotion(4), sis(4), sunbw2(4), suncg14(4), suncg3(4), suncg6(4), sunffb(4), sunleo(4), suntcx(4), tdfx(4), tga(4), trident(4), tseng(4), v4l(4), vesa(4), vga(4), vmware(4),
+
+.SH "AUTHOR"
+Xephyr was written by Matthew Allum <mallum@o\-hand.com> 2004.
+
+This man page was written by Charlie Smotherman for Matthew Allum and the Debian project.
+
+
diff --git a/debian/rules b/debian/rules
index 20f149f..af86857 100755
--- a/debian/rules
+++ b/debian/rules
@@ -137,6 +137,7 @@ install: build
 	
 	install -m 755 debian/local/xvfb-run debian/tmp/usr/bin
 	install debian/local/xvfb-run.1 debian/tmp/usr/share/man/man1
+	install debian/local/xserver-xephyr.1 debian/tmp/usr/share/man/man1
 
 
 # stub to start building deb files, used by binary-indep and binary-arch
diff --git a/debian/xserver-xephyr.install b/debian/xserver-xephyr.install
index 15adb97..57cb956 100644
--- a/debian/xserver-xephyr.install
+++ b/debian/xserver-xephyr.install
@@ -1 +1,2 @@
 usr/bin/Xephyr
+usr/share/man/man1/xserver-xephyr.1
\ No newline at end of file

commit a852571f12fc4594e4030d1e0435836c3f238625
Author: Bryce Harrington <bryce@bryceharrington.org>
Date:   Wed Apr 1 20:37:09 2009 -0700

    cl entry for bug 328205

diff --git a/debian/changelog b/debian/changelog
index 0363528..d13b6c8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,10 +1,11 @@
 xorg-server (2:1.6.0-0ubuntu9) jaunty; urgency=low
 
-  [Andrew Pollock]
   * debian/local/xvfb-run: Fixes race condition with concurrent invocations
     (LP: #348052)
+  * debian/local/xvfb-run, xvfb-run.1: Add correct docs about error codes
+    (LP: #328205)
 
- -- Bryce Harrington <bryce@ubuntu.com>  Wed, 01 Apr 2009 20:24:04 -0700
+ -- Bryce Harrington <bryce@ubuntu.com>  Wed, 01 Apr 2009 20:35:36 -0700
 
 xorg-server (2:1.6.0-0ubuntu8) jaunty; urgency=low
 

commit ed382ad5c9e18747719de9f765aabb222cb7a7a4
Author: Bryce Harrington <bryce@bryceharrington.org>
Date:   Wed Apr 1 20:29:51 2009 -0700

    Fix documentation to more clearly explain error exit codes
    
    Patch from Mark Painter (LP: #328205)

diff --git a/debian/local/xvfb-run b/debian/local/xvfb-run
index 59fac52..eb04037 100644
--- a/debian/local/xvfb-run
+++ b/debian/local/xvfb-run
@@ -4,7 +4,8 @@
 
 # This script starts an instance of Xvfb, the "fake" X server, runs a command
 # with that server available, and kills the X server when done.  The return
-# value of the command becomes the return value of this script.
+# value of the command becomes the return value of this script, except in cases
+# where this script encounters an error.
 #
 # If anyone is using this to build a Debian package, make sure the package
 # Build-Depends on xvfb, xbase-clients, and xfonts-base.
diff --git a/debian/local/xvfb-run.1 b/debian/local/xvfb-run.1
index 137d3a1..b90af14 100644
--- a/debian/local/xvfb-run.1
+++ b/debian/local/xvfb-run.1
@@ -68,7 +68,11 @@ cookie removed, and the authority file deleted (if the user did not specify
 one to use).
 .B xvfb\-run
 then exits with the exit status of
-.IR command .
+.IR command ,
+except in error conditions (see
+.SM
+.B EXIT STATUS
+below).
 .PP
 .B xvfb\-run
 requires the
@@ -209,8 +213,6 @@ options are specifed; see above.
 .B xvfb\-run
 uses its exit status as well as output to standard error to communicate
 diagnostics.
-The exit status of \(oq1\(cq is not used, and should be interpreted as failure
-of the specified command.
 .TP
 0
 .B xvfb\-run
@@ -220,6 +222,10 @@ option is given.
 In all other situations, this may be interpreted as success of the specified
 command.
 .TP
+1
+.B Xvfb
+did not start correctly.
+.TP
 2
 No command to run was specified.
 .TP

commit 7b97392adadd50096a75fff1354be0c1ffaab3e1
Author: Bryce Harrington <bryce@bryceharrington.org>
Date:   Wed Apr 1 20:28:33 2009 -0700

    Concurrent invocations can lead to race condition with server number
    selection.
    
    Patch from Andrew Pollock (LP: #348052)

diff --git a/debian/changelog b/debian/changelog
index fa50bb0..0363528 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+xorg-server (2:1.6.0-0ubuntu9) jaunty; urgency=low
+
+  [Andrew Pollock]
+  * debian/local/xvfb-run: Fixes race condition with concurrent invocations
+    (LP: #348052)
+
+ -- Bryce Harrington <bryce@ubuntu.com>  Wed, 01 Apr 2009 20:24:04 -0700
+
 xorg-server (2:1.6.0-0ubuntu8) jaunty; urgency=low
 
   * Add 173_edid_quirk_philips_lcd.patch :
diff --git a/debian/local/xvfb-run b/debian/local/xvfb-run
index 148da9f..59fac52 100644
--- a/debian/local/xvfb-run
+++ b/debian/local/xvfb-run
@@ -109,7 +109,7 @@ eval set -- "$ARGS"
 
 while :; do
     case "$1" in
-        -a|--auto-servernum) SERVERNUM=$(find_free_servernum) ;;
+        -a|--auto-servernum) SERVERNUM=$(find_free_servernum); AUTONUM="yes" ;;
         -e|--error-file) ERRORFILE="$2"; shift ;;
         -f|--auth-file) AUTHFILE="$2"; shift ;;
         -h|--help) SHOWHELP="yes" ;;
@@ -155,13 +155,32 @@ if [ -z "$AUTHFILE" ]; then
     AUTHFILE=$(tempfile -n "$XVFB_RUN_TMPDIR/Xauthority")
 fi
 
-# Start Xvfb.
-MCOOKIE=$(mcookie)
-XAUTHORITY=$AUTHFILE xauth add ":$SERVERNUM" "$XAUTHPROTO" "$MCOOKIE" \
-  >>"$ERRORFILE" 2>&1
-XAUTHORITY=$AUTHFILE Xvfb ":$SERVERNUM" $XVFBARGS $LISTENTCP >>"$ERRORFILE" \
-  2>&1 &
-XVFBPID=$!
+# Start Xvfb
+# Loop until we get a match between lock file contents and Xvfb PID
+# (this avoids a race condition when another process starts an Xserver).
+while true; do
+    MCOOKIE=$(mcookie)
+    XAUTHORITY=$AUTHFILE xauth add ":$SERVERNUM" "$XAUTHPROTO" "$MCOOKIE" \
+        >>"$ERRORFILE" 2>&1
+    XAUTHORITY=$AUTHFILE Xvfb ":$SERVERNUM" $XVFBARGS $LISTENTCP \
+        >>"$ERRORFILE" 2>&1 &
+    XVFBPID=$!
+    # Test PID of Xvfb and contents of the X server lock file
+    # (use numerical comparison to avoid whitespace issues).
+    # If the display was in use the Xvfb process will die on its own.
+    if [ "$XVFBPID" -eq "$(</tmp/.X${SERVERNUM}-lock)" ]; then
+        break
+    fi
+    # The display is in use so try another one (if '-a' was specified).
+    if [ "$AUTONUM" ]; then
+        SERVERNUM=$(find_free_servernum)
+        continue
+    fi
+    error "display :$SERVERNUM already in use"
+    exit 1
+done
+
+# Xvfb has started without any race conditions.
 sleep "$STARTWAIT"
 if ! kill -0 $XVFBPID 2>/dev/null; then
   echo "Xvfb failed to start" >&2


Reply to: