diff options
author | Jens Axboe <axboe@kernel.dk> | 2020-05-22 09:12:09 -0600 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2020-06-21 20:44:25 -0600 |
commit | dd3e6d5039de1cbff4e20e2b34390ff44cdb182f (patch) | |
tree | 459a91bf1f1bf0ef2c2346a8f405499d1248d8cf /kernel/umh.c | |
parent | c7510ab2cf5ccd997fe7f194edfe09cc511abf99 (diff) |
mm: add support for async page locking
Normally waiting for a page to become unlocked, or locking the page,
requires waiting for IO to complete. Add support for lock_page_async()
and wait_on_page_locked_async(), which are callback based instead. This
allows a caller to get notified when a page becomes unlocked, rather
than wait for it.
We add a new iocb field, ki_waitq, to pass in the necessary data for this
to happen. We can unionize this with ki_cookie, since that is only used
for polled IO. Polled IO can never co-exist with async callbacks, as it is
(by definition) polled completions. struct wait_page_key is made public,
and we define struct wait_page_async as the interface between the caller
and the core.
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'kernel/umh.c')
0 files changed, 0 insertions, 0 deletions