BLK_INIT_QUEUE(9) Block Devices BLK_INIT_QUEUE(9)NAME
blk_init_queue - prepare a request queue for use with a block device
struct request_queue * blk_init_queue(request_fn_proc * rfn, spinlock_t * lock);
The function to be called to process requests that have been placed on the queue.
Request queue spin lock
If a block device wishes to use the standard request handling procedures, which sorts requests and coalesces adjacent requests, then it
must call blk_init_queue. The function rfn will be called when there are requests on the queue that need to be processed. If the device
supports plugging, then rfn may not be called immediately when requests are available on the queue, but may be called at some time later
instead. Plugged queues are generally unplugged when a buffer belonging to one of the requests on the queue is needed, or due to memory
rfn is not required, or even expected, to remove all requests off the queue, but only as many as it can handle at a time. If it does leave
requests on the queue, it is responsible for arranging that the requests get dealt with eventually.
The queue spin lock must be held while manipulating the requests on the request queue; this lock will be taken also from interrupt context,
so irq disabling is needed for it.
Function returns a pointer to the initialized request queue, or NULL if it didn't succeed.
blk_init_queue must be paired with a blk_cleanup_queue call when the block device is deactivated (such as at module unload).
COPYRIGHT Kernel Hackers Manual 3.10 June 2014 BLK_INIT_QUEUE(9)
Check Out this Related Man Page
qdisable(8B) PBS qdisable(8B)NAME
qdisable - disable input to a pbs destination
qdisable destination ...
The qdisable command directs that a destination should no longer accept batch jobs. If the command is accepted, the destination will no
longer accept Queue Job requests which specified the disabled queue. Jobs which already reside in the queue will continue to be processed.
This allows a queue to be "drained."
In order to execute qdisable, the user must have PBS Operation or Manager privilege.
The qdisable command accepts one or more destination operands. The operands are one of three forms:
If queue is specified, the request is to disable that queue at the default server. If the @server form is given, the request is to disable
all the queues at that server. If a full destination identifier, queue@server, is given, the request is to disable the named queue at the
The qdisable command will write a diagnostic message to standard error for each error occurrence.
Upon successful processing of all the operands presented to the qdisable command, the exit status will be a value of zero.
If the qdisable command fails to process any operand, the command exits with a value greater than zero.
SEE ALSO pbs_server(8B), qmgr(1B), and qenable(8B)Local qdisable(8B)
I'd like to know a logic or a strategy to count the number of I/O requests that are being made. I have the PID of the process for which this needed to be done. Does anyone have any clue as to how to do this? This is to be done in Kernel programming in C.
This is to be done in... (2 Replies)