[SSI] openssi/kernel/fs exec.c, 1.10, 1.11 fs-writeback.c, 1.9, 1.10 locks.c, 1.6, 1.7 super.c, 1.26, 1.27

Roger Tsang <[email protected]>
Newsgroups gmane.linux.cluster.ssic.cvs
Message-ID <[email protected]>
Update of /cvsroot/ssic-linux/openssi/kernel/fs
In directory fdv4jf1.ch3.sourceforge.com:/tmp/cvs-serv8553/fs

Modified Files:
      Tag: OPENSSI-FC
	exec.c fs-writeback.c locks.c super.c 
Log Message:
Bug fixes and enhancements. (see ChangeLog)


Index: exec.c
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/fs/exec.c,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- exec.c	10 Oct 2008 08:10:32 -0000	1.10
+++ exec.c	3 Feb 2009 06:18:13 -0000	1.11
@@ -716,13 +716,9 @@
 		struct dentry *proc_dentry1, *proc_dentry2;
 		unsigned long exit_state, ptrace;
 #if defined(VPROC_RELEASE__REFCNT_RACE_FIX) && defined(VPROC_HOLD_ZERO_GET_TASK)
-		struct vproc *vl;
+		struct vproc *vl = VPROCPTR(leader->pid);
 #endif
 
-#if defined(VPROC_RELEASE__REFCNT_RACE_FIX) && defined(VPROC_HOLD_ZERO_GET_TASK)
-		vl = LOCATE_VPROC_PID_ORIGIN(leader->pid, "de_thread(leader)");
-		BUG_ON(leader->p_vproc != vl);
-#endif
 		/*
 		 * Wait for the thread group leader to be a zombie.
 		 * It should already be zombie at this point, most
@@ -813,10 +809,10 @@
 		do_notify_parent(leader, SIGCHLD, 0, 0);
 #ifdef VPROC_RELEASE__REFCNT_RACE_FIX
 		VPROC_RELE(parent->p_vproc, "temp de_thread(parent of leader)");
-#endif
-#if defined(VPROC_RELEASE__REFCNT_RACE_FIX) && defined(VPROC_HOLD_ZERO_GET_TASK)
+#ifdef VPROC_HOLD_ZERO_GET_TASK
 		VPROC_RELE(vl, "de_thread(leader)");
 #endif
+#endif
 #ifdef DE_THREAD__OOPS_FIX
 		/* [ ssic-linux-Bugs-2000692 ]
 		 * Wait for leader to get reaped.
@@ -827,7 +823,7 @@
 #endif
 #else
 		release_task(leader);
-#endif
+#endif /* !VPROC */
         }
 
 	/*

Index: fs-writeback.c
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/fs/fs-writeback.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -d -r1.9 -r1.10
--- fs-writeback.c	10 Oct 2008 08:10:32 -0000	1.9
+++ fs-writeback.c	3 Feb 2009 06:18:13 -0000	1.10
@@ -419,11 +419,7 @@
 				spin_unlock(&inode_lock);
 			}
 		} else
-		/* SSI_XXX: Do we really want to drop into
-		 * this sync of CFS?  It shouldn't have dirty
-		 * inodes.
-		 */
-		/* PERFORMANCE: flush CFS last. */
+		/* flush CFS */
 #endif
 		if (sb->s_root) {
 			spin_lock(&inode_lock);
@@ -433,7 +429,7 @@
 		up_read(&sb->s_umount);
 	}
 	spin_lock(&sb_lock);
-	/* SSI_XXX: psb->s_list always empty ? */
+	/* SSI: psb->s_list always empty. See sgetx() */
 	return __put_super_and_need_restart(sb);
 }
 
@@ -444,9 +440,9 @@
 		return 0;
 	if (cfs_sb_is_cfs(sb) && sbtocmi(sb) && CFS_AT_SERVER_SB(sb)) {
 		struct super_block *psb = sbtocmi(sb)->mi_pfs_sb;
+#ifdef NOTYET
 		extern int cfs_writeback_inodes(struct super_block *, struct writeback_control *);
 
-#ifdef NOTYET 
 		/* Bottom up recursive stacked CFS */
 		if (cfs_writeback_inodes(psb, wbc))
 			return 1;
@@ -454,8 +450,7 @@
 			return 0;
 #endif
 		if (!list_empty(&psb->s_dirty) || !list_empty(&psb->s_io))
-			if (__writeback_inodes(sb, wbc, 1))
-				return 1;
+			return __writeback_inodes(sb, wbc, 1);
 	}
 	return 0;
 }

Index: locks.c
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/fs/locks.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- locks.c	7 Aug 2007 03:06:13 -0000	1.6
+++ locks.c	3 Feb 2009 06:18:13 -0000	1.7
@@ -480,10 +480,7 @@
 
 /*
  */
-#if !defined(CONFIG_SSI) && !defined(CONFIG_CFS)
-static
-#endif
-void locks_delete_block(struct file_lock *waiter)
+static void locks_delete_block(struct file_lock *waiter)
 {
 	lock_kernel();
 	__locks_delete_block(waiter);

Index: super.c
===================================================================
RCS file: /cvsroot/ssic-linux/openssi/kernel/fs/super.c,v
retrieving revision 1.26
retrieving revision 1.27
diff -u -d -r1.26 -r1.27
--- super.c	10 Oct 2008 08:10:32 -0000	1.26
+++ super.c	3 Feb 2009 06:18:13 -0000	1.27
@@ -76,9 +76,7 @@
 			s = NULL;
 			goto out;
 		}
-#ifdef CONFIG_CFS
 		INIT_LIST_HEAD(&s->s_list);
-#endif
 		INIT_LIST_HEAD(&s->s_dirty);
 		INIT_LIST_HEAD(&s->s_io);
 		INIT_LIST_HEAD(&s->s_files);
@@ -274,8 +272,10 @@
 	}
 	spin_lock(&sb_lock);
 #ifdef CONFIG_CFS
+#ifndef CFS_STALE_SUPER_BLOCKS
 	if (!iscfs(sb->s_flags))
 #endif
+#endif
 	/* should be initialized for __put_super_and_need_restart() */
 	list_del_init(&sb->s_list);
 	list_del(&sb->s_instances);


------------------------------------------------------------------------------
Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and code to
build responsive, highly engaging applications that combine the power of local
resources and data with the reach of the web. Download the Adobe AIR SDK and
Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.