On 05/04/2016 05:31 PM, Javier González wrote:
Within a target, I/O requests stem from different paths, which might vary in terms of the data structures being allocated, context, etc. This might impact how the request is treated, or how memory is freed once the bio is completed. Add two different types of I/Os: (i) NVM_IOTYPE_SYNC, which indicates that the I/O is synchronous; and (ii) NVM_IOTYPE_CLOSE_BLK, which indicates that the I/O closes the block to which all the ppas on the request belong to. Signed-off-by: Javier González <javier@xxxxxxxxxxxx> --- include/linux/lightnvm.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/linux/lightnvm.h b/include/linux/lightnvm.h index 29a6890..6c02209 100644 --- a/include/linux/lightnvm.h +++ b/include/linux/lightnvm.h @@ -11,6 +11,8 @@ enum { NVM_IOTYPE_NONE = 0, NVM_IOTYPE_GC = 1, + NVM_IOTYPE_SYNC = 2, + NVM_IOTYPE_CLOSE_BLK = 4, }; #define NVM_BLK_BITS (16)
The sync should not be necessary when the read path is implemented using bio_clone. Similarly for NVM_IOTYPE_CLOSE_BLK. The write completion can be handled in the bio completion path.
-- To unsubscribe from this list: send the line "unsubscribe linux-block" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html