For bio with REQ_NOMERGE,it mean this bio can't merge with other bios. And the request with this bio has the same meaning. In blk_queue_bio, bio with REQ_NOMERGE can't be merged and get a new request. But in init_request_from_bio, request can't test REQ_NOMERGE. So the request can merge other bio or merge other request. Add REQ_NOMERGE into REQ_COMMON_MASK to avoid this.
Signed-off-by: Jianpeng Ma <majianp...@gmail.com> --- include/linux/blk_types.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/linux/blk_types.h b/include/linux/blk_types.h index fa1abeb..fc7f4c5 100644 --- a/include/linux/blk_types.h +++ b/include/linux/blk_types.h @@ -197,7 +197,7 @@ enum rq_flag_bits { #define REQ_COMMON_MASK \ (REQ_WRITE | REQ_FAILFAST_MASK | REQ_SYNC | REQ_META | REQ_PRIO | \ REQ_DISCARD | REQ_WRITE_SAME | REQ_NOIDLE | REQ_FLUSH | REQ_FUA | \ - REQ_SECURE) + REQ_SECURE | REQ_NOMERGE) #define REQ_CLONE_MASK REQ_COMMON_MASK #define BIO_NO_ADVANCE_ITER_MASK (REQ_DISCARD|REQ_WRITE_SAME) -- 1.8.4N§²æìr¸yúèØb²X¬¶Ç§vØ^)Þº{.nÇ+·¥{±êçzX§¶¡Ü¨}©²Æ zÚ&j:+v¨¾«êçzZ+Ê+zf£¢·h§~Ûiÿûàz¹®w¥¢¸?¨èÚ&¢)ߢfù^jÇ«y§m á@A«a¶Úÿ 0¶ìh®åi