Scroll to navigation

__LOCK_PAGE(9) Memory Management in Linux __LOCK_PAGE(9)

NAME

__lock_page - get a lock on the page, assuming we need to sleep to get it

SYNOPSIS

void __lock_page(struct page * page);

ARGUMENTS

page

the page to lock

DESCRIPTION

Ugly. Running sync_page in state TASK_UNINTERRUPTIBLE is scary. If some random driver´s requestfn sets TASK_RUNNING, we could busywait. However chances are that on the second loop, the block layer´s plug list is empty, so sync_page will then return in state TASK_UNINTERRUPTIBLE.

COPYRIGHT

April 2023 Kernel Hackers Manual 2.6.