Commit a1e10d3a authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] Fix binfmt_misc locking

This fixes a sleep-in-spinlock bug for binfmt_misc registration.

That lock is purely for the list, not for the dentry.
parent 39612600
......@@ -529,8 +529,8 @@ static ssize_t bm_register_write(struct file *file, const char *buffer,
inode->u.generic_ip = e;
inode->i_fop = &bm_entry_operations;
write_lock(&entries_lock);
d_instantiate(dentry, inode);
write_lock(&entries_lock);
list_add(&e->list, &entries);
write_unlock(&entries_lock);
......
......@@ -82,6 +82,9 @@
* ->private_lock (try_to_unmap_one)
* ->page_lock (try_to_unmap_one)
* ->zone.lru_lock (follow_page->mark_page_accessed)
*
* ->task->proc_lock
* ->dcache_lock (proc_pid_lookup)
*/
/*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment