unlock_page
Prev | More Memory Management Functions | Next

## Name

unlock_page — unlock a locked page

## Synopsis

`void unlock_page (` | struct page * page`)`;

## Arguments

`page`

  the page

## Description

Unlocks the page and wakes up sleepers in `___wait_on_page_locked`. Also wakes sleepers in `wait_on_page_writeback` because the wakeup mechananism between PageLocked pages and PageWriteback pages is shared. But that's OK - sleepers in `wait_on_page_writeback` just go back to sleep.

The mb is necessary to enforce ordering between the clear_bit and the read of the waitqueue (to avoid SMP races with a parallel `wait_on_page_locked`).

Prev | Up | Next
add_page_wait_queue | Home | end_page_writeback