diff --git a/kernel/futex.c b/kernel/futex.c index e71fa668d514..974553af8184 100644 --- a/kernel/futex.c +++ b/kernel/futex.c @@ -588,7 +588,7 @@ again: lock_page(page); shmem_swizzled = PageSwapCache(page) || page->mapping; unlock_page(page); - put_page(page); + put_user_page(page); if (shmem_swizzled) goto again; @@ -638,7 +638,7 @@ again: if (READ_ONCE(page->mapping) != mapping) { rcu_read_unlock(); - put_page(page); + put_user_page(page); goto again; } @@ -646,7 +646,7 @@ again: inode = READ_ONCE(mapping->host); if (!inode) { rcu_read_unlock(); - put_page(page); + put_user_page(page); goto again; } @@ -658,7 +658,7 @@ again: } out: - put_page(page); + put_user_page(page); return err; }