UNLOCK_PAGE(9) Memory Management in Linux UNLOCK_PAGE(9)
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).
COPYRIGHT
Kernel Hackers Manual 2.6. July 2010 UNLOCK_PAGE(9)