[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