diff options
| author | Jeff Garzik <jgarzik@pobox.com> | 2005-11-05 15:39:24 -0500 |
|---|---|---|
| committer | Jeff Garzik <jgarzik@pobox.com> | 2005-11-05 15:39:24 -0500 |
| commit | 7211bb9b64f17b23834d91fc3d0c1d78671ee9a8 (patch) | |
| tree | 541909f86c31fee97cd70d28ec2fe5c23e1ceb02 /kernel/futex.c | |
| parent | f1e691a24955ea987f021f378324fb5003b1b208 (diff) | |
| parent | 70d9d825e0a5a78ec1dacaaaf5c72ff5b0206fab (diff) | |
Merge branch 'master'
Diffstat (limited to 'kernel/futex.c')
| -rw-r--r-- | kernel/futex.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/kernel/futex.c b/kernel/futex.c index ca05fe6a70b2..3b4d5ad44cc6 100644 --- a/kernel/futex.c +++ b/kernel/futex.c @@ -205,15 +205,13 @@ static int get_futex_key(unsigned long uaddr, union futex_key *key) /* * Do a quick atomic lookup first - this is the fastpath. */ - spin_lock(¤t->mm->page_table_lock); - page = follow_page(mm, uaddr, 0); + page = follow_page(mm, uaddr, FOLL_TOUCH|FOLL_GET); if (likely(page != NULL)) { key->shared.pgoff = page->index << (PAGE_CACHE_SHIFT - PAGE_SHIFT); - spin_unlock(¤t->mm->page_table_lock); + put_page(page); return 0; } - spin_unlock(¤t->mm->page_table_lock); /* * Do it the general way. |
