>>>>> "Christof" == Christof Schmitt <christof.schmitt@xxxxxxxxxx> writes: Christof, Christof> The motivation stems from research how the integrity data can Christof> be mapped to the hardware interface used by the zfcp Christof> driver. When passing data segments to the zfcp hardware Christof> controller, there is the constraint that each data segment has Christof> a maximum size of 4k and a segment must not cross a 4k Christof> boundary. Ok. Christof> Right now, this is done by reporting the maximum segment size Christof> and segment boundary accordingly from zfcp. When issuing a Christof> request, zfcp simply walks the sg list and passes the segments Christof> to the hardware controller, no mapping or readjustment is Christof> necessary in the driver. In that case I don't really have a problem with adhering to the queue segment size and segment boundary for the integrity metadata. As long as we avoid using the max number of data segments to cap the integrity scatterlist because that'll definitely break a lot of stuff. Does the zfcp hardware have scatterlist length constraints? >> Your change also has repercussions when merging requests and bios. >> We'd need to honor the DI segmentation constraints when merging. >> Otherwise we may end up going beyond the controller limits when >> mapping the sgl. Christof> Meaning the integrity data sg list would have more entries Christof> than max_segments? I have not seen this during my experiments, Christof> but then i likely have not hit every case of a possible Christof> request layout. It happens all the time. -- Martin K. Petersen Oracle Linux Engineering -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html