lkml.org 
[lkml]   [2001]   [Jun]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: VFS locking & HFS problems (2.4.6pre6)
Benjamin Herrenschmidt wrote:
>
> I've had a deadlock twice with 2.4.6pre6 today. It's an SMP kernel
> running on an UP box (a PowerBook Pismo).
>
> The deadlock happen in the HFS filesystem in hfs_cat_put(), apparently
> (quickly looking at addresses) in spin_lock().
>

Please test this:

Index: fs/hfs/catalog.c
===================================================================
RCS file: /opt/cvs/lk/fs/hfs/catalog.c,v
retrieving revision 1.2
diff -u -r1.2 catalog.c
--- fs/hfs/catalog.c 2001/02/17 01:44:39 1.2
+++ fs/hfs/catalog.c 2001/06/29 15:54:17
@@ -549,7 +549,7 @@
entry->state &= ~HFS_LOCK;
hfs_wake_up(&entry->wait);
}
-
+ spin_lock(&entry_lock);
return entry;
}

@@ -559,7 +559,6 @@
if (grow_entries())
goto add_new_entry;

- spin_unlock(&entry_lock);
return NULL;

read_fail:
@@ -570,7 +569,6 @@
init_entry(entry);
list_add(&entry->list, &entry_unused);
entries_stat.nr_free_entries++;
- spin_unlock(&entry_lock);
return NULL;
}
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2005-03-22 12:55    [W:0.061 / U:0.036 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site