Message ID | 20240517095218.3107672-1-luchangqi.123@bytedance.com |
---|---|
Headers | show |
Series | Support persistent reservation operations | expand |
Hi, could anyone please review this series? On 2024/5/17 17:52, Changqi Lu wrote: > Hi, > > Please ignore the v2 series. Please review the v3 series instead. > Thanks! > > v2->v3: > In v2 Persist Through Power Loss(PTPL) is enable default. > In v3 PTPL is supported, which is passed as a parameter. > > v1->v2: > - Add sg_persist --report-capabilities for SCSI protocol and enable > oncs and rescap for NVMe protocol. > - Add persistent reservation capabilities constants and helper functions for > SCSI and NVMe protocol. > - Add comments for necessary APIs. > > v1: > - Add seven APIs about persistent reservation command for block layer. > These APIs including reading keys, reading reservations, registering, > reserving, releasing, clearing and preempting. > - Add the necessary pr-related operation APIs for both the > SCSI protocol and NVMe protocol at the device layer. > - Add scsi driver at the driver layer to verify the functions. > Changqi Lu (11): > block: add persistent reservation in/out api > block/raw: add persistent reservation in/out driver > scsi/constant: add persistent reservation in/out protocol constants > scsi/util: add helper functions for persistent reservation types > conversion > hw/scsi: add persistent reservation in/out api for scsi device > block/nvme: add reservation command protocol constants > hw/nvme: add helper functions for converting reservation types > hw/nvme: enable ONCS reservations > hw/nvme: enable namespace rescap function > hw/nvme: add reservation protocal command > block/iscsi: add persistent reservation in/out driver > > block/block-backend.c | 397 ++++++++++++++++++++++++++ > block/io.c | 163 +++++++++++ > block/iscsi.c | 443 ++++++++++++++++++++++++++++++ > block/raw-format.c | 56 ++++ > hw/nvme/ctrl.c | 324 +++++++++++++++++++++- > hw/nvme/ns.c | 8 + > hw/nvme/nvme.h | 44 +++ > hw/scsi/scsi-disk.c | 352 ++++++++++++++++++++++++ > include/block/block-common.h | 40 +++ > include/block/block-io.h | 20 ++ > include/block/block_int-common.h | 84 ++++++ > include/block/nvme.h | 99 +++++++ > include/scsi/constants.h | 52 ++++ > include/scsi/utils.h | 8 + > include/sysemu/block-backend-io.h | 24 ++ > scsi/utils.c | 81 ++++++ > 16 files changed, 2193 insertions(+), 2 deletions(-) >