forked from pool/xorg-x11-server
Accepting request 38875 from X11:XOrg
Copy from X11:XOrg/xorg-x11-server based on submit request 38875 from user sndirsch OBS-URL: https://build.opensuse.org/request/show/38875 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/xorg-x11-server?expand=0&rev=165
This commit is contained in:
commit
89d8fdfa97
@ -11,11 +11,11 @@ server on 100 percent CPU load since the select timeout is set to 0.
|
||||
xorg-server-1.8.0/Xext/syncsrv.h | 1 +
|
||||
2 files changed, 10 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/xorg-server-1.8.0/Xext/sync.c b/xorg-server-1.8.0/Xext/sync.c
|
||||
index fd7b1ad..4c45399 100644
|
||||
--- a/Xext/sync.c
|
||||
+++ b/Xext/sync.c
|
||||
@@ -518,6 +518,10 @@ SyncAlarmTriggerFired(SyncTrigger *pTrigger)
|
||||
Index: xorg-server-1.8.0/Xext/sync.c
|
||||
===================================================================
|
||||
--- xorg-server-1.8.0.orig/Xext/sync.c
|
||||
+++ xorg-server-1.8.0/Xext/sync.c
|
||||
@@ -518,6 +518,10 @@ SyncAlarmTriggerFired(SyncTrigger *pTrig
|
||||
pAlarm->state = XSyncAlarmInactive;
|
||||
}
|
||||
}
|
||||
@ -26,7 +26,7 @@ index fd7b1ad..4c45399 100644
|
||||
/* The AlarmNotify event has to have the "new state of the alarm"
|
||||
* which we can't be sure of until this point. However, it has
|
||||
* to have the "old" trigger test value. That's the reason for
|
||||
@@ -730,7 +734,7 @@ SyncChangeAlarmAttributes(ClientPtr client, SyncAlarm *pAlarm, Mask mask,
|
||||
@@ -730,7 +734,7 @@ SyncChangeAlarmAttributes(ClientPtr clie
|
||||
XSyncCounter counter;
|
||||
Mask origmask = mask;
|
||||
|
||||
@ -35,7 +35,7 @@ index fd7b1ad..4c45399 100644
|
||||
|
||||
while (mask)
|
||||
{
|
||||
@@ -741,7 +745,7 @@ SyncChangeAlarmAttributes(ClientPtr client, SyncAlarm *pAlarm, Mask mask,
|
||||
@@ -741,7 +745,7 @@ SyncChangeAlarmAttributes(ClientPtr clie
|
||||
case XSyncCACounter:
|
||||
mask &= ~XSyncCACounter;
|
||||
/* sanity check in SyncInitTrigger */
|
||||
@ -44,7 +44,22 @@ index fd7b1ad..4c45399 100644
|
||||
break;
|
||||
|
||||
case XSyncCAValueType:
|
||||
@@ -815,6 +819,7 @@ SyncChangeAlarmAttributes(ClientPtr client, SyncAlarm *pAlarm, Mask mask,
|
||||
@@ -808,6 +812,14 @@ SyncChangeAlarmAttributes(ClientPtr clie
|
||||
return BadMatch;
|
||||
}
|
||||
}
|
||||
+ if (pAlarm->state == XSyncAlarmInactive) {
|
||||
+ /*
|
||||
+ * If we are inactive the trigger has been deleted from the counter.
|
||||
+ * Persuade SyncInitTrigger() to readd it.
|
||||
+ */
|
||||
+ origmask |= XSyncCACounter;
|
||||
+ pAlarm->trigger.pCounter = NULL;
|
||||
+ }
|
||||
|
||||
/* postpone this until now, when we're sure nothing else can go wrong */
|
||||
if ((status = SyncInitTrigger(client, &pAlarm->trigger, counter,
|
||||
@@ -815,6 +827,7 @@ SyncChangeAlarmAttributes(ClientPtr clie
|
||||
return status;
|
||||
|
||||
/* XXX spec does not really say to do this - needs clarification */
|
||||
@ -52,7 +67,7 @@ index fd7b1ad..4c45399 100644
|
||||
pAlarm->state = XSyncAlarmActive;
|
||||
return Success;
|
||||
}
|
||||
@@ -1617,8 +1622,10 @@ ProcSyncCreateAlarm(ClientPtr client)
|
||||
@@ -1617,8 +1630,10 @@ ProcSyncCreateAlarm(ClientPtr client)
|
||||
|
||||
pAlarm->client = client;
|
||||
pAlarm->alarm_id = stuff->id;
|
||||
@ -63,10 +78,10 @@ index fd7b1ad..4c45399 100644
|
||||
pAlarm->state = XSyncAlarmInactive;
|
||||
pAlarm->pEventClients = NULL;
|
||||
status = SyncChangeAlarmAttributes(client, pAlarm, vmask,
|
||||
diff --git a/xorg-server-1.8.0/Xext/syncsrv.h b/xorg-server-1.8.0/Xext/syncsrv.h
|
||||
index 6d0e3d6..527729d 100644
|
||||
--- a/Xext/syncsrv.h
|
||||
+++ b/Xext/syncsrv.h
|
||||
Index: xorg-server-1.8.0/Xext/syncsrv.h
|
||||
===================================================================
|
||||
--- xorg-server-1.8.0.orig/Xext/syncsrv.h
|
||||
+++ xorg-server-1.8.0/Xext/syncsrv.h
|
||||
@@ -129,6 +129,7 @@ typedef struct _SyncAlarm {
|
||||
int events;
|
||||
int state;
|
||||
@ -75,6 +90,3 @@ index 6d0e3d6..527729d 100644
|
||||
} SyncAlarm;
|
||||
|
||||
typedef struct {
|
||||
--
|
||||
1.6.4.2
|
||||
|
||||
|
12
dmx-silly.patch
Normal file
12
dmx-silly.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff -Nru xorg-server-1.8.0.orig/hw/dmx/dmxextension.c xorg-server-1.8.0/hw/dmx/dmxextension.c
|
||||
--- xorg-server-1.8.0.orig/hw/dmx/dmxextension.c 2009-11-04 17:25:50.000000000 +0100
|
||||
+++ xorg-server-1.8.0/hw/dmx/dmxextension.c 2010-04-23 14:31:56.000000000 +0200
|
||||
@@ -1160,7 +1160,7 @@
|
||||
len_images);
|
||||
|
||||
/* Clean up */
|
||||
- free(len_images);
|
||||
+ free(images);
|
||||
free(gids);
|
||||
free(glyphs);
|
||||
}
|
@ -1,3 +1,17 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 26 10:40:11 UTC 2010 - eich@suse.de
|
||||
|
||||
- Updated "Prevent XSync Alarms from senslessly calling CheckTrigger()"
|
||||
to make sure SyncTriggerInit() readds trigger to counter (bnc #584919).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 26 12:08:44 CEST 2010 - sndirsch@suse.de
|
||||
|
||||
- Xdmx was disabled in favor of Nomad repository but it is
|
||||
apparently dead (no Xdmx for OpenSUSE 11.2, last build from
|
||||
early 2009). This patch re-enables Xdmx with some silly typo
|
||||
fixed (dmx-silly.patch). Contributed by <zawel1@gmail.com>.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 21 16:03:07 CEST 2010 - eich@suse.de
|
||||
|
||||
|
@ -32,7 +32,7 @@ BuildRequires: libjpeg-devel
|
||||
%endif
|
||||
Url: http://xorg.freedesktop.org/
|
||||
Version: 7.5_%{dirsuffix}
|
||||
Release: 5
|
||||
Release: 6
|
||||
License: GPLv2+ ; MIT License (or similar)
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Group: System/X11/Servers/XF86_4
|
||||
@ -113,6 +113,7 @@ Patch208: xorg-evdev-conf.diff
|
||||
Patch209: sw_cursor_on_randr.patch
|
||||
Patch210: pio_ia64.diff
|
||||
Patch211: 0001-Prevent-XSync-Alarms-from-senslessly-calling-CheckTr.patch
|
||||
Patch212: dmx-silly.patch
|
||||
%if %moblin
|
||||
Patch300: moblin-use_preferred_mode_for_all_outputs.diff
|
||||
%endif
|
||||
@ -236,6 +237,7 @@ popd
|
||||
%patch209 -p1
|
||||
%patch210 -p1
|
||||
%patch211 -p1
|
||||
%patch212 -p1
|
||||
%if %moblin
|
||||
%patch300 -p1
|
||||
%endif
|
||||
@ -255,7 +257,7 @@ autoreconf -fi
|
||||
--enable-xdm-auth-1 \
|
||||
--enable-dri \
|
||||
--enable-dri2 \
|
||||
--disable-dmx \
|
||||
--enable-dmx \
|
||||
--enable-xnest \
|
||||
--enable-kdrive \
|
||||
--enable-xephyr \
|
||||
@ -300,6 +302,7 @@ mkdir -p $RPM_BUILD_ROOT/usr/%{_lib}/xorg/modules/updates/{fonts,input,linux,dri
|
||||
install -m 644 $RPM_SOURCE_DIR/README.updates $RPM_BUILD_ROOT/usr/%{_lib}/xorg/modules/updates
|
||||
mkdir -p $RPM_BUILD_ROOT/etc/modprobe.d
|
||||
install -m 644 $RPM_SOURCE_DIR/modprobe.nvidia $RPM_BUILD_ROOT/etc/modprobe.d/50-nvidia.conf
|
||||
gzip -c hw/dmx/Xdmx.man > $RPM_BUILD_ROOT/%{_mandir}/man1/Xdmx.1.gz
|
||||
%else
|
||||
rm -f $RPM_BUILD_ROOT/usr/share/aclocal/*.m4
|
||||
%endif
|
||||
@ -399,6 +402,19 @@ exit 0
|
||||
/usr/bin/Xephyr
|
||||
/usr/bin/Xnest
|
||||
/usr/bin/Xvfb
|
||||
/usr/bin/Xdmx
|
||||
/usr/bin/dmxaddinput
|
||||
/usr/bin/dmxaddscreen
|
||||
/usr/bin/dmxinfo
|
||||
/usr/bin/dmxreconfig
|
||||
/usr/bin/dmxresize
|
||||
/usr/bin/dmxrminput
|
||||
/usr/bin/dmxrmscreen
|
||||
/usr/bin/dmxtodmx
|
||||
/usr/bin/dmxwininfo
|
||||
/usr/bin/vdltodmx
|
||||
/usr/bin/xdmxconfig
|
||||
%{_mandir}/man1/Xdmx.1*
|
||||
%{_mandir}/man1/Xephyr.1*
|
||||
%{_mandir}/man1/Xnest.1*
|
||||
%{_mandir}/man1/Xvfb.1*
|
||||
|
Loading…
Reference in New Issue
Block a user