rpms/kernel/devel fixup-dri2-kms-merge.patch,NONE,1.1
Kristian Høgsberg
krh at fedoraproject.org
Fri Aug 29 19:42:15 UTC 2008
- Previous message (by thread): rpms/kdeutils/F-9 kdeutils.spec,1.127,1.128 sources,1.51,1.52
- Next message (by thread): rpms/kde-l10n/devel .cvsignore, 1.11, 1.12 kde-l10n.spec, 1.42, 1.43 sources, 1.11, 1.12
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Author: krh
Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv4570
Added Files:
fixup-dri2-kms-merge.patch
Log Message:
* Fri Aug 29 2008 Kristian Høgsberg <krh at redhat.com>
- Fix a couple of merge bugs between DRI2 and KMS.
fixup-dri2-kms-merge.patch:
--- NEW FILE fixup-dri2-kms-merge.patch ---
>From 0705a7958899a8787061740d5853ecce1febe4e3 Mon Sep 17 00:00:00 2001
From: =?utf-8?q?Kristian=20H=C3=B8gsberg?= <krh at redhat.com>
Date: Fri, 29 Aug 2008 15:25:51 -0400
Subject: [PATCH] Fix up merge of DRI2 patches and KMS.
diff --git a/drivers/gpu/drm/drm_bufs.c b/drivers/gpu/drm/drm_bufs.c
index 112ba7a..d4e42e0 100644
--- a/drivers/gpu/drm/drm_bufs.c
+++ b/drivers/gpu/drm/drm_bufs.c
@@ -414,8 +414,8 @@ int drm_rmmap_locked(struct drm_device *dev, drm_local_map_t *map)
vfree(map->handle);
if (master) {
if (dev->sigdata.lock == master->lock.hw_lock)
- dev->sigdata.lock = NULL;
- master->lock.hw_lock = NULL; /* SHM removed */
+ dev->sigdata.lock = &dev->default_lock;
+ master->lock.hw_lock = &dev->default_lock;
master->lock.file_priv = NULL;
wake_up_interruptible(&master->lock.lock_queue);
}
diff --git a/drivers/gpu/drm/drm_stub.c b/drivers/gpu/drm/drm_stub.c
index 1f842d8..1dc2965 100644
--- a/drivers/gpu/drm/drm_stub.c
+++ b/drivers/gpu/drm/drm_stub.c
@@ -141,8 +141,8 @@ static void drm_master_destroy(struct kref *kref)
if (master->lock.hw_lock != &dev->default_lock) {
if (dev->sigdata.lock == master->lock.hw_lock)
- dev->sigdata.lock = NULL;
- master->lock.hw_lock = NULL; /* SHM removed */
+ dev->sigdata.lock = &dev->default_lock;
+ master->lock.hw_lock = &dev->default_lock;
master->lock.file_priv = NULL;
wake_up_interruptible(&master->lock.lock_queue);
}
diff --git a/drivers/gpu/drm/i915/i915_init.c b/drivers/gpu/drm/i915/i915_init.c
index f2c9a3a..06f2ecb 100644
--- a/drivers/gpu/drm/i915/i915_init.c
+++ b/drivers/gpu/drm/i915/i915_init.c
@@ -18,17 +18,6 @@ int i915_master_create(struct drm_device *dev, struct drm_master *master)
if (!master_priv)
return -ENOMEM;
- /* prebuild the SAREA */
- sareapage = max(SAREA_MAX, PAGE_SIZE);
- ret = drm_addmap(dev, 0, sareapage, _DRM_SHM, _DRM_CONTAINS_LOCK|_DRM_DRIVER,
- &master_priv->sarea);
- if (ret) {
- DRM_ERROR("SAREA setup failed\n");
- return ret;
- }
- master_priv->sarea_priv = master_priv->sarea->handle + sizeof(struct drm_sarea);
- master_priv->sarea_priv->pf_current_page = 0;
-
master->driver_priv = master_priv;
return 0;
}
@@ -39,9 +28,6 @@ void i915_master_destroy(struct drm_device *dev, struct drm_master *master)
if (!master_priv)
return;
-
- if (master_priv->sarea)
- drm_rmmap_locked(dev, master_priv->sarea);
drm_free(master_priv, sizeof(*master_priv), DRM_MEM_DRIVER);
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 8371abc..965ec74 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -451,7 +451,8 @@ int i915_irq_emit(struct drm_device *dev, void *data,
drm_i915_irq_emit_t *emit = data;
int result;
- LOCK_TEST_WITH_RETURN(dev, file_priv);
+ if (file_priv->master->lock.hw_lock != &dev->default_lock)
+ LOCK_TEST_WITH_RETURN(dev, file_priv);
if (!dev_priv) {
DRM_ERROR("called with no initialization\n");
- Previous message (by thread): rpms/kdeutils/F-9 kdeutils.spec,1.127,1.128 sources,1.51,1.52
- Next message (by thread): rpms/kde-l10n/devel .cvsignore, 1.11, 1.12 kde-l10n.spec, 1.42, 1.43 sources, 1.11, 1.12
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the fedora-extras-commits
mailing list