1UNLOCK_PAGE(9) Memory Management in Linux UNLOCK_PAGE(9)
2
3
4
6 unlock_page - unlock a locked page
7
9 void unlock_page(struct page * page);
10
12 page
13 the page
14
16 Unlocks the page and wakes up sleepers in ___wait_on_page_locked. Also
17 wakes sleepers in wait_on_page_writeback because the wakeup mechananism
18 between PageLocked pages and PageWriteback pages is shared. But that's
19 OK - sleepers in wait_on_page_writeback just go back to sleep.
20
21 The mb is necessary to enforce ordering between the clear_bit and the
22 read of the waitqueue (to avoid SMP races with a parallel
23 wait_on_page_locked).
24
26Kernel Hackers Manual 2.6. November 2011 UNLOCK_PAGE(9)