Re: [PATCH] nvmet: disable direct I/O when unavailable

From: Bart Van Assche
Date: Mon Feb 25 2019 - 09:49:10 EST


On 2/25/19 1:37 AM, Johannes Thumshirn wrote:
On 24/02/2019 11:54, Max Gurtovoy wrote:
What is the status of iSCSI/SRP targets in this case ?

iSCSI/SRP passes in the following:

/*
* Use O_DSYNC by default instead of O_SYNC to forgo syncing
* of pure timestamp updates.
*/
flags = O_RDWR | O_CREAT | O_LARGEFILE | O_DSYNC;

That code fragment comes from the LIO file backend. There is no requirement for a SCSI target core file backend to use O_DSYNC. SCST allows users to choose whether or not O_DSYNC should be used:

if (virt_dev->wt_flag && !virt_dev->nv_cache)
open_flags |= O_DSYNC;

Bart.