xserver-xorg-video-savage: Changes to 'debian-unstable'
debian/changelog | 7 ++++++
debian/patches/02_savage_check_ShadowVirtual.diff | 23 ++++++++++++++++++++++
debian/patches/series | 1
debian/xsfbs/xsfbs.mk | 23 +++++++++++++---------
4 files changed, 45 insertions(+), 9 deletions(-)
New commits:
commit 61b5026e8e47b80d96f87918b824e16216171ef8
Author: Brice Goglin <Brice.Goglin@ens-lyon.org>
Date: Wed Jul 11 19:05:49 2007 +0200
Add 02_savage_check_ShadowVirtual.diff
diff --git a/debian/changelog b/debian/changelog
index f5cf7d5..cba288c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,10 @@
+xserver-xorg-video-savage (1:2.1.2-6) UNRELEASED; urgency=low
+
+ * Add 02_savage_check_ShadowVirtual.diff, thanks Tormod Volden
+ (closes: #428089).
+
+ -- Brice Goglin <Brice.Goglin@ens-lyon.org> Wed, 11 Jul 2007 19:04:31 +0200
+
xserver-xorg-video-savage (1:2.1.2-5) unstable; urgency=low
[ Timo Aaltonen ]
diff --git a/debian/patches/02_savage_check_ShadowVirtual.diff b/debian/patches/02_savage_check_ShadowVirtual.diff
new file mode 100644
index 0000000..7c5ee49
--- /dev/null
+++ b/debian/patches/02_savage_check_ShadowVirtual.diff
@@ -0,0 +1,23 @@
+Fixes #428089
+
+https://bugs.freedesktop.org/show_bug.cgi?id=11237
+
+This is a workaround, that keeps the server from crashing and borking the
+consoles. It returns from ShadowWait if there is no ShadowVirtual pointer.
+But I think ShadowWait should not have been called in the first place.
+
+Index: xserver-xorg-video-savage-2.1.2/src/savage_driver.c
+===================================================================
+--- xserver-xorg-video-savage-2.1.2.orig/src/savage_driver.c 2007-07-07 11:22:06.000000000 +0200
++++ xserver-xorg-video-savage-2.1.2/src/savage_driver.c 2007-07-07 11:28:35.000000000 +0200
+@@ -549,6 +549,10 @@
+ if( !psav->NoPCIRetry )
+ return 0;
+
++ /* in case we should not have been here */
++ if( !psav->ShadowVirtual )
++ return 0;
++
+ psav->ShadowCounter = (psav->ShadowCounter + 1) & 0xffff;
+ if (psav->ShadowCounter == 0)
+ psav->ShadowCounter++; /* 0 is reserved for the BIOS
diff --git a/debian/patches/series b/debian/patches/series
index aca27e7..edbcf00 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,2 @@
01_savage_driver_disable_randr_on_rotation.diff
+02_savage_check_ShadowVirtual.diff
commit e29b56820909668b062fdba72458ee9483a4ae44
Author: Brice Goglin <Brice.Goglin@ens-lyon.org>
Date: Mon Jul 9 21:50:47 2007 +0200
Minor fixes in the patching system.
* Fix debian/rules to not be confused by ~/.quiltrc or QUILT_PATCHES (as in #369920).
* Display which patches are applied and removed instead of just the first one (for #428090).
diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
index 2930c1e..5f13302 100755
--- a/debian/xsfbs/xsfbs.mk
+++ b/debian/xsfbs/xsfbs.mk
@@ -21,6 +21,11 @@
# Pass $(DH_OPTIONS) into the environment for debhelper's benefit.
export DH_OPTIONS
+# force quilt to not use ~/.quiltrc
+QUILT = quilt --quiltrc /dev/null
+# force QUILT_PATCHES to the default in case it is exported in the environment
+QUILT_PATCHES = patches/
+
# Set up parameters for the upstream build environment.
# Determine (source) package name from Debian changelog.
@@ -140,9 +145,9 @@ $(STAMP_DIR)/patch: $(STAMP_DIR)/prepare
echo "Couldn't find quilt. Please install it or add it to the build-depends for this package."; \
exit 1; \
fi; \
- if quilt next >/dev/null 2>&1; then \
+ if $(QUILT) next >/dev/null 2>&1; then \
echo -n "Applying patches..."; \
- if quilt push -a -v 2>&1 | tee $(STAMP_DIR)/log/patch; then \
+ if $(QUILT) push -a -v 2>&1 | tee $(STAMP_DIR)/log/patch; then \
echo "successful."; \
else \
echo "failed! (check $(STAMP_DIR)/log/patch for details)"; \
@@ -159,7 +164,7 @@ unpatch:
rm -f $(STAMP_DIR)/patch
@echo -n "Unapplying patches..."; \
if [ -e $(STAMP_DIR)/patches/applied-patches ]; then \
- if quilt pop -a -v 2>&1 | tee $(STAMP_DIR)/log/unpatch; then \
+ if $(QUILT) pop -a -v 2>&1 | tee $(STAMP_DIR)/log/unpatch; then \
echo "successful."; \
else \
echo "failed! (check $(STAMP_DIR)/log/unpatch for details)"; \
@@ -295,17 +300,17 @@ patch-audit: prepare unpatch
@echo -n "Auditing patches..."; \
>$(STAMP_DIR)/log/patch; \
FUZZY=; \
- while [ -n "$$(quilt next)" ]; do \
- RESULT=$$(quilt push -v | tee -a $(STAMP_DIR)/log/patch | grep ^Hunk | sed 's/^Hunk.*\(succeeded\|FAILED\).*/\1/');\
+ while [ -n "$$($(QUILT) next)" ]; do \
+ RESULT=$$($(QUILT) push -v | tee -a $(STAMP_DIR)/log/patch | grep ^Hunk | sed 's/^Hunk.*\(succeeded\|FAILED\).*/\1/');\
case "$$RESULT" in \
succeeded) \
- echo "fuzzy patch: $$(quilt top)" \
- | tee -a $(STAMP_DIR)/log/$$(quilt top); \
+ echo "fuzzy patch: $$($(QUILT) top)" \
+ | tee -a $(STAMP_DIR)/log/$$($(QUILT) top); \
FUZZY=yes; \
;; \
FAILED) \
- echo "broken patch: $$(quilt next)" \
- | tee -a $(STAMP_DIR)/log/$$(quilt next); \
+ echo "broken patch: $$($(QUILT) next)" \
+ | tee -a $(STAMP_DIR)/log/$$($(QUILT) next); \
exit 1; \
;; \
esac; \
commit 16d97b30b91da02d5a3edc2b895cbd4a1995f62d
Author: Brice Goglin <Brice.Goglin@ens-lyon.org>
Date: Mon Jul 9 19:06:05 2007 +0200
Fix displaying of patches applied by quilt.
As requested in bug #428090, we silence the output of quilt next
and display the output of quilt push/pop.
diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk
index 63dde45..2930c1e 100755
--- a/debian/xsfbs/xsfbs.mk
+++ b/debian/xsfbs/xsfbs.mk
@@ -140,9 +140,9 @@ $(STAMP_DIR)/patch: $(STAMP_DIR)/prepare
echo "Couldn't find quilt. Please install it or add it to the build-depends for this package."; \
exit 1; \
fi; \
- if quilt next; then \
+ if quilt next >/dev/null 2>&1; then \
echo -n "Applying patches..."; \
- if quilt push -a -v >$(STAMP_DIR)/log/patch 2>&1; then \
+ if quilt push -a -v 2>&1 | tee $(STAMP_DIR)/log/patch; then \
echo "successful."; \
else \
echo "failed! (check $(STAMP_DIR)/log/patch for details)"; \
@@ -159,7 +159,7 @@ unpatch:
rm -f $(STAMP_DIR)/patch
@echo -n "Unapplying patches..."; \
if [ -e $(STAMP_DIR)/patches/applied-patches ]; then \
- if quilt pop -a -v >$(STAMP_DIR)/log/unpatch 2>&1; then \
+ if quilt pop -a -v 2>&1 | tee $(STAMP_DIR)/log/unpatch; then \
echo "successful."; \
else \
echo "failed! (check $(STAMP_DIR)/log/unpatch for details)"; \
Reply to: