blk_stop_queue
Prev | Chapter 14. Block Devices | Next

## Name

blk_stop_queue — stop a queue

## Synopsis

`void blk_stop_queue (` | struct request_queue * q`)`;

## Arguments

`q`

  The struct request_queue in question

## Description

The Linux block layer assumes that a block driver will consume all entries on the request queue when the request_fn strategy is called. Often this will not happen, because of hardware limitations (queue depth settings). If a device driver gets a 'queue full' response, or if it simply chooses not to queue more I/O at one point, it can call this function to prevent the request_fn from being called until the driver has signalled it's ready to go again. This happens by calling `blk_start_queue` to restart queue operations. Queue lock must be held.

Prev | Up | Next
blk_start_queue | Home | blk_sync_queue