From: Andrew Morton Jens has been changing things. Whoever merges second will need this. How come scsi_tgt_cmd_destroy() uses a hard-coded "1" for ->cmd_flags?? Cc: Jens Axboe Cc: James Bottomley Signed-off-by: Andrew Morton --- drivers/scsi/scsi.c | 3 ++- drivers/scsi/scsi_tgt_lib.c | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff -puN drivers/scsi/scsi.c~git-scsi-target-vs-git-block drivers/scsi/scsi.c --- a/drivers/scsi/scsi.c~git-scsi-target-vs-git-block +++ a/drivers/scsi/scsi.c @@ -198,7 +198,8 @@ struct scsi_cmnd *scsi_host_get_command( cmd->request = rq; rq->special = cmd; - rq->flags |= REQ_SPECIAL | REQ_BLOCK_PC; + rq->cmd_type = REQ_TYPE_SPECIAL; + rq->cmd_flags |= REQ_TYPE_BLOCK_PC; return cmd; diff -puN drivers/scsi/scsi_tgt_lib.c~git-scsi-target-vs-git-block drivers/scsi/scsi_tgt_lib.c --- a/drivers/scsi/scsi_tgt_lib.c~git-scsi-target-vs-git-block +++ a/drivers/scsi/scsi_tgt_lib.c @@ -105,9 +105,9 @@ static void scsi_tgt_cmd_destroy(void *d * blk_rq_bio_prep ruined ti. */ if (cmd->sc_data_direction == DMA_TO_DEVICE) - cmd->request->flags |= 1; + cmd->request->cmd_flags |= 1; else - cmd->request->flags &= ~1UL; + cmd->request->cmd_flags &= ~1UL; scsi_unmap_user_pages(tcmd); kmem_cache_free(scsi_tgt_cmd_cache, tcmd); _