rpms/kernel/devel kernel.spec, 1.479, 1.480 linux-2.6-drm-i915-modeset.patch, 1.1, 1.2

Dave Airlie (airlied) fedora-extras-commits at redhat.com
Fri Mar 7 07:04:11 UTC 2008


Author: airlied

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv19814

Modified Files:
	kernel.spec linux-2.6-drm-i915-modeset.patch 
Log Message:
* Fri Mar 07 2008 Dave Airlie <airlied at redhat.com>
- drm/modeset - fix unload and overly-large size alloc



Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.479
retrieving revision 1.480
diff -u -r1.479 -r1.480
--- kernel.spec	6 Mar 2008 05:37:20 -0000	1.479
+++ kernel.spec	7 Mar 2008 07:03:34 -0000	1.480
@@ -1757,6 +1757,9 @@
 %kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL} -e /etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf %{with_xen} xen
 
 %changelog
+* Fri Mar 07 2008 Dave Airlie <airlied at redhat.com>
+- drm/modeset - fix unload and overly-large size alloc
+
 * Thu Mar 06 2008 Dave Airlie <airlied at redhat.com>
 - Add initial i915 drm modesetting tree - needs i915.modeset=1 on command
   line + new libdrm + new intel driver to actually be useful

linux-2.6-drm-i915-modeset.patch:

Index: linux-2.6-drm-i915-modeset.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/linux-2.6-drm-i915-modeset.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- linux-2.6-drm-i915-modeset.patch	6 Mar 2008 05:37:20 -0000	1.1
+++ linux-2.6-drm-i915-modeset.patch	7 Mar 2008 07:03:34 -0000	1.2
@@ -5469,20 +5469,10 @@
  	}
  
 diff --git a/drivers/char/drm/drm_irq.c b/drivers/char/drm/drm_irq.c
-index a2c1369..06bbdff 100644
+index a2c1369..01bed65 100644
 --- a/drivers/char/drm/drm_irq.c
 +++ b/drivers/char/drm/drm_irq.c
-@@ -157,6 +157,9 @@ int drm_irq_uninstall(struct drm_device * dev)
- 	if (!drm_core_check_feature(dev, DRIVER_HAVE_IRQ))
- 		return -EINVAL;
- 
-+	if (drm_core_check_feature(dev, DRIVER_MODESET))
-+		return 0;
-+
- 	mutex_lock(&dev->struct_mutex);
- 	irq_enabled = dev->irq_enabled;
- 	dev->irq_enabled = 0;
-@@ -201,6 +204,8 @@ int drm_control(struct drm_device *dev, void *data,
+@@ -201,6 +201,8 @@ int drm_control(struct drm_device *dev, void *data,
  	case DRM_INST_HANDLER:
  		if (!drm_core_check_feature(dev, DRIVER_HAVE_IRQ))
  			return 0;
@@ -5491,7 +5481,16 @@
  		if (dev->if_version < DRM_IF_VERSION(1, 2) &&
  		    ctl->irq != dev->irq)
  			return -EINVAL;
-@@ -405,18 +410,18 @@ static void drm_locked_tasklet_func(unsigned long data)
+@@ -208,6 +210,8 @@ int drm_control(struct drm_device *dev, void *data,
+ 	case DRM_UNINST_HANDLER:
+ 		if (!drm_core_check_feature(dev, DRIVER_HAVE_IRQ))
+ 			return 0;
++		if (drm_core_check_feature(dev, DRIVER_MODESET))
++			return 0;
+ 		return drm_irq_uninstall(dev);
+ 	default:
+ 		return -EINVAL;
+@@ -405,18 +409,18 @@ static void drm_locked_tasklet_func(unsigned long data)
  	spin_lock_irqsave(&dev->tasklet_lock, irqflags);
  
  	if (!dev->locked_tasklet_func ||
@@ -8781,10 +8780,10 @@
  	int ret;
 diff --git a/drivers/char/drm/i915_init.c b/drivers/char/drm/i915_init.c
 new file mode 100644
-index 0000000..e2018bb
+index 0000000..b82a46b
 --- /dev/null
 +++ b/drivers/char/drm/i915_init.c
-@@ -0,0 +1,400 @@
+@@ -0,0 +1,401 @@
 +/*
 + * Copyright (c) 2007 Intel Corporation
 + *   Jesse Barnes <jesse.barnes at intel.com>
@@ -9052,6 +9051,7 @@
 +
 +
 +	if (drm_core_check_feature(dev, DRIVER_MODESET)) {
++		drm_irq_uninstall(dev);
 +		intel_modeset_cleanup(dev);
 +	}
 +
@@ -11268,7 +11268,7 @@
 +#endif /* __INTEL_DRV_H__ */
 diff --git a/drivers/char/drm/intel_fb.c b/drivers/char/drm/intel_fb.c
 new file mode 100644
-index 0000000..e33494c
+index 0000000..d9743da
 --- /dev/null
 +++ b/drivers/char/drm/intel_fb.c
 @@ -0,0 +1,752 @@
@@ -11846,7 +11846,7 @@
 +	fb->bits_per_pixel = 32;
 +	fb->pitch = fb->width * ((fb->bits_per_pixel + 1) / 8);
 +	fb->depth = 24;
-+	ret = drm_buffer_object_create(dev, fb->pitch * fb->height * 4, 
++	ret = drm_buffer_object_create(dev, fb->pitch * fb->height, 
 +				       drm_bo_type_kernel,
 +				       DRM_BO_FLAG_READ |
 +				       DRM_BO_FLAG_WRITE |




More information about the fedora-extras-commits mailing list