[829] in arla-drinkers

home help back first fref pref prev next nref lref last post

patch for linux kernel 2.3.2

daemon@ATHENA.MIT.EDU (Hee-Seok Heo)
Sat May 15 21:24:07 1999

From owner-arla-drinkers@stacken.kth.se Sun May 16 01:24:06 1999
Return-Path: <owner-arla-drinkers@stacken.kth.se>
Delivered-To: arla-drinkers-mtg@bloom-picayune.mit.edu
Received: (qmail 5015 invoked from network); 16 May 1999 01:24:05 -0000
Received: from unknown (HELO sundance.stacken.kth.se) (130.237.234.41)
  by bloom-picayune.mit.edu with SMTP; 16 May 1999 01:24:05 -0000
Received: (from majordom@localhost)
	by sundance.stacken.kth.se (8.8.8/8.8.8) id DAA16879
	for arla-drinkers-list; Sun, 16 May 1999 03:15:49 +0200 (MET DST)
Received: from smtp.postech.ac.kr (root@smtp.postech.ac.kr [141.223.2.11])
	by sundance.stacken.kth.se (8.8.8/8.8.8) with ESMTP id DAA16875
	for <arla-drinkers@stacken.kth.se>; Sun, 16 May 1999 03:15:37 +0200 (MET DST)
Received: from postech.ac.kr (IDENT:hsheo@MDOM11403-1.postech.ac.kr [141.223.207.111])
	by smtp.postech.ac.kr (8.9.1/8.9.1) with ESMTP id KAA01530
	for <arla-drinkers@stacken.kth.se>; Sun, 16 May 1999 10:15:28 +0900
Message-ID: <373E1C9F.B6BC5176@postech.ac.kr>
Date: Sun, 16 May 1999 10:17:20 +0900
From: Hee-Seok Heo <hsheo@postech.ac.kr>
X-Mailer: Mozilla 4.51 [ko] (X11; I; Linux 2.3.2-1 i686)
X-Accept-Language: ko
MIME-Version: 1.0
To: arla-drinkers@stacken.kth.se
Subject: patch for linux kernel 2.3.2
Content-Type: multipart/mixed;
 boundary="------------75ADBFA10DB908E50FA479FF"
Sender: owner-arla-drinkers@stacken.kth.se
Precedence: bulk

MIME Çü½ÄÀÇ ¸ÖƼ-ÆÄÆ® ¸Þ½ÃÁöÀÔ´Ï´Ù.
--------------75ADBFA10DB908E50FA479FF
Content-Type: text/plain; charset=EUC-KR
Content-Transfer-Encoding: 7bit



--
Heeseok Heo PhD St POSTECH



--------------75ADBFA10DB908E50FA479FF
Content-Type: text/plain; charset=EUC-KR;
 name="arla-0.23-k232.patch"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="arla-0.23-k232.patch"

--- arla-0.23/xfs/linux/xfs_dev.c	Sun Mar 28 23:14:07 1999
+++ arla-0.23-new/xfs/linux/xfs_dev.c	Sun May 16 08:04:22 1999
@@ -62,14 +62,14 @@
     struct xfs_link *prev, *next;
     struct xfs_message_header *message;
     u_int error_or_size;	/* error on sleepq and size on messageq */
-    struct wait_queue *wait_queue;
+    wait_queue_head_t wait_queue;
 };  
 
 struct xfs_channel {
     struct xfs_link messageq;	/* Messages not yet read */
     struct xfs_link sleepq;	/* Waiting for reply message */
     u_int nsequence;
-    struct wait_queue *wait_queue;
+    wait_queue_head_t wait_queue;
     struct xfs_message_header *message_buffer;
     int status;
 #define CHANNEL_OPENED	0x1
@@ -83,7 +83,7 @@
 {
     q->next = q;
     q->prev = q;
-    q->wait_queue = NULL;
+    init_waitqueue_head(&(q->wait_queue));
 }
 
 /* Is this queue empty? */
@@ -407,10 +407,9 @@
     t->this_message.message = &t->msg;
     down(&chan->channel_sem);
     xfs_appendq(&chan->messageq, &t->this_message);
-    t->this_message.wait_queue = NULL;
+    init_waitqueue_head(&(t->this_message.wait_queue));
     up(&chan->channel_sem);
-    if ( chan->wait_queue )
-	wake_up(&chan->wait_queue);
+    wake_up(&chan->wait_queue);
     return 0;
 }
 
@@ -447,8 +446,8 @@
     XFSDEB(XDEBMSG, ("xfs_message_rpc seq = %d\n", msg->sequence_num));
     this_message->error_or_size = 0;
     
-    this_message->wait_queue = NULL;
-    this_process->wait_queue = NULL;
+    init_waitqueue_head(&(this_message->wait_queue));
+    init_waitqueue_head(&(this_process->wait_queue));
     
     this_message->message = msg; /* message;*/
     this_process->message = msg; /* message; */
@@ -460,8 +459,7 @@
     
     up(&chan->channel_sem);
     
-    if ( chan->wait_queue )
-	wake_up(&chan->wait_queue);
+    wake_up(&chan->wait_queue);
     
 #ifdef LINUX2_1
     spin_lock_irq(&current->sigmask_lock);
@@ -603,8 +601,7 @@
 		else
 		    t->error_or_size = -message->error;
 	    }
-	    if (t->wait_queue)
-		wake_up(&t->wait_queue);
+	    wake_up(&t->wait_queue);
 	    break;
 	}
     up(&chan->channel_sem);
@@ -636,8 +633,7 @@
 		else
 		    t->error_or_size = -message->error;
 	    }
-	    if (t->wait_queue)
-		wake_up(&t->wait_queue);
+	    wake_up(&t->wait_queue);
 	    break;
 	}
     up(&chan->channel_sem);
@@ -671,10 +667,10 @@
     
     for (i = 0; i < NXFS; i++) {
 	XFSDEB(XDEBDEV, ("before initq(messageq and sleepq)\n"));
-	xfs_channel[i].wait_queue = NULL;
+	init_waitqueue_head(&(xfs_channel[i].wait_queue));
 	xfs_initq(&xfs_channel[i].messageq);
 	xfs_initq(&xfs_channel[i].sleepq);
-	xfs_channel[i].channel_sem = MUTEX;
+	init_MUTEX(&(xfs_channel[i].channel_sem));
     }
     return 0;
 }
--- arla-0.23/xfs/linux/xfs_inodeops.c	Sun Mar 28 23:14:08 1999
+++ arla-0.23-new/xfs/linux/xfs_inodeops.c	Sun May 16 07:59:20 1999
@@ -466,13 +466,9 @@
 void
 xfs_print_lock(char *s, struct semaphore *sem)
 {
-    XFSDEB(XDEBLOCK, ("lock: %s sem: %p count: %d waking: %d wait: %p",
+    XFSDEB(XDEBLOCK, ("lock: %s sem: %p count: %d waking: %d",
 		      s, sem, atomic_read(&sem->count),
-		      sem->waking, sem->wait));
-    if (sem->wait) {
-	XFSDEB(XDEBLOCK, (" task: %p next: %p",
-			  sem->wait->task, sem->wait->next));
-    }
+		      sem->waking));
     XFSDEB(XDEBLOCK, ("\n"));
 }
 

--------------75ADBFA10DB908E50FA479FF--


home help back first fref pref prev next nref lref last post