Chapter 7. IO Scheduler and block IO Tapset

Table of Contents

probe::ioscheduler.elv_next_request - Fires when a request is retrieved from the request queue
probe::ioscheduler.elv_next_request.return - Fires when a request retrieval issues a return signal
probe::ioscheduler.elv_completed_request - Fires when a request is completed
probe::ioscheduler.elv_add_request.kp - kprobe based probe to indicate that a request was added to the request queue
probe::ioscheduler.elv_add_request.tp - tracepoint based probe to indicate a request is added to the request queue.
probe::ioscheduler.elv_add_request - probe to indicate request is added to the request queue.
probe::ioscheduler_trace.elv_completed_request - Fires when a request is
probe::ioscheduler_trace.elv_issue_request - Fires when a request is
probe::ioscheduler_trace.elv_requeue_request - Fires when a request is
probe::ioscheduler_trace.elv_abort_request - Fires when a request is aborted.
probe::ioscheduler_trace.plug - Fires when a request queue is plugged;
probe::ioscheduler_trace.unplug_io - Fires when a request queue is unplugged;
probe::ioscheduler_trace.unplug_timer - Fires when unplug timer associated
probe::ioblock.request - Fires whenever making a generic block I/O request.
probe::ioblock.end - Fires whenever a block I/O transfer is complete.
probe::ioblock_trace.bounce - Fires whenever a buffer bounce is needed for at least one page of a block IO request.
probe::ioblock_trace.request - Fires just as a generic block I/O request is created for a bio.
probe::ioblock_trace.end - Fires whenever a block I/O transfer is complete.

This family of probe points is used to probe block IO layer and IO scheduler activities. It contains the following probe points: