<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">

Patch from: Martin Josefsson &lt;gandalf@wlug.westbo.se&gt;

Hi,

Here's a fix for an uninitialized timer in drm_drv.h, for some reason it
initilizes the timer when the device is opened, not at init.
It moves the initilization for the waitqueue to init aswell.



 char/drm/drm_drv.h |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff -puN drivers/char/drm/drm_drv.h~drm-timer-init drivers/char/drm/drm_drv.h
--- 25/drivers/char/drm/drm_drv.h~drm-timer-init	2003-02-15 14:42:07.000000000 -0800
+++ 25-akpm/drivers/char/drm/drm_drv.h	2003-02-15 14:42:07.000000000 -0800
@@ -323,8 +323,6 @@ static int DRM(setup)( drm_device_t *dev
 	dev-&gt;last_context = 0;
 	dev-&gt;last_switch = 0;
 	dev-&gt;last_checked = 0;
-	init_timer( &amp;dev-&gt;timer );
-	init_waitqueue_head( &amp;dev-&gt;context_wait );
 
 	dev-&gt;ctx_start = 0;
 	dev-&gt;lck_start = 0;
@@ -580,6 +578,8 @@ static int __init drm_init( void )
 		memset( (void *)dev, 0, sizeof(*dev) );
 		dev-&gt;count_lock = SPIN_LOCK_UNLOCKED;
 		sema_init( &amp;dev-&gt;struct_sem, 1 );
+		init_timer( &amp;dev-&gt;timer );
+		init_waitqueue_head( &amp;dev-&gt;context_wait );
 
 		if ((DRM(minor)[i] = DRM(stub_register)(DRIVER_NAME, &amp;DRM(fops),dev)) &lt; 0)
 			return -EPERM;

_
</pre></body></html>