On Wed, 2005-04-20 at 14:41 -0400, John Bucy wrote:
> This box is running 2.6.11.7 on alpha with Dave Kleikamp's pagesize and
> locking patches... any ideas?
Yeah,
I had fixed this, but I don't think I sent you the patch. It is
included in 2.6.11-rc2-mm*
diff -Nurp linux/fs/jfs/jfs_metapage.c linux-new/fs/jfs/jfs_metapage.c
--- linux/fs/jfs/jfs_metapage.c 2005-03-28 15:54:20.000000000 -0600
+++ linux-new/fs/jfs/jfs_metapage.c 2005-03-28 15:57:31.000000000 -0600
@@ -307,13 +307,21 @@ static void remove_from_logsync(struct m
{
struct jfs_log *log = mp->log;
unsigned long flags;
+/*
+ * This can race. Recheck that log hasn't been set to null, and after
+ * acquiring logsync lock, recheck lsn
+ */
+ if (!log)
+ return;
LOGSYNC_LOCK(log, flags);
- mp->log = NULL;
- mp->lsn = 0;
- mp->clsn = 0;
- log->count--;
- list_del(&mp->synclist);
+ if (mp->lsn) {
+ mp->log = NULL;
+ mp->lsn = 0;
+ mp->clsn = 0;
+ log->count--;
+ list_del(&mp->synclist);
+ }
LOGSYNC_UNLOCK(log, flags);
}
--
David Kleikamp
IBM Linux Technology Center
-------------------------------------------------------
This SF.Net email is sponsored by: New Crystal Reports XI.
Version 11 adds new functionality designed to reduce time involved in
creating, integrating, and deploying reporting solutions. Free runtime info,
new features, or free trial, at: http://www.businessobjects.com/devxi/728
_______________________________________________
Jfs-discussion mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jfs-discussion