Linux 4.4 Getting Persistent Reservation API For Block Devices

Written by Michael Larabel in Hardware on 4 November 2015 at 08:36 AM EST. Add A Comment
HARDWARE
Besides landing the LightNVM / Open-Channel SSD supprot, another pull request by Jens Axboe is adding another new feature for Linux 4.4.

Axboe sent in generic block reservation support. This pull adds support at the block level for persistent reservations and implements it at the core level as well as for the SCSI and NVMe drivers.

It's via this pull request. The code is via this Git branch. The to-be-added documentation explains the Persistent Reservation API as:
The Linux kernel supports a user space interface for simplified Persistent Reservations which map to block devices that support these (like SCSI). Persistent Reservations allow restricting access to block devices to specific initiators in a shared storage setup.

This document gives a general overview of the support ioctl commands. For a more detailed reference please refer the the SCSI Primary Commands standard, specifically the section on Reservations and the "PERSISTENT RESERVE IN" and "PERSISTENT RESERVE OUT" commands.

All implementations are expected to ensure the reservations survive a power loss and cover all connections in a multi path environment. These behaviors are optional in SPC but will be automatically applied by Linux.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week