#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/bio.h>
#include <linux/blkdev.h>
#include <linux/bootmem.h>
#include <linux/slab.h>
#include "blk.h"
Go to the source code of this file.
get_task_io_context - get io_context of a task : task of interest : allocation flags, used if allocation is necessary : allocation node, used if allocation is necessary
Return io_context of . If it doesn't exist, it is created with and . The returned io_context has its reference count incremented.
This function always goes through task_lock() and it's better to use current->io_context + get_io_context() for current.
Definition at line 288 of file blk-ioc.c.
ioc_clear_queue - break any ioc association with the specified queue : request_queue being cleared
Walk ->icq_list and exit all io_cq's. Must be called with locked.
Definition at line 220 of file blk-ioc.c.
ioc_create_icq - create and link io_cq : io_context of interest : request_queue of interest : allocation mask
Make sure io_cq linking and exists. If icq doesn't exist, they will be created using .
The caller is responsible for ensuring won't go away and is alive and will stay alive until this function returns.
Definition at line 358 of file blk-ioc.c.
ioc_lookup_icq - lookup io_cq from ioc : the associated io_context : the associated request_queue
Look up io_cq associated with - pair from . Must be called with ->queue_lock held.
Definition at line 318 of file blk-ioc.c.
put_io_context - put a reference of io_context : io_context to put
Decrement reference count of and release it if the count reaches zero.
Definition at line 130 of file blk-ioc.c.
put_io_context_active - put active reference on ioc : ioc of interest
Undo get_io_context_active(). If active reference reaches zero after put, can never issue further IOs and ioscheds are notified.
Definition at line 165 of file blk-ioc.c.
subsys_initcall |
( |
blk_ioc_init |
| ) |
|