block: split out request-only flags into a new namespace
authorChristoph Hellwig <hch@lst.de>
Thu, 20 Oct 2016 13:12:13 +0000 (15:12 +0200)
committerJens Axboe <axboe@fb.com>
Fri, 28 Oct 2016 14:45:17 +0000 (08:45 -0600)
commite806402130c9c494e22c73ae9ead4e79d2a5811c
treebac59e1eb3f1b5945409bd0780a4824e9b8383f8
parent8d2bbd4c8236e9e38e6b36ac9e2c54fdcfe5b335
block: split out request-only flags into a new namespace

A lot of the REQ_* flags are only used on struct requests, and only of
use to the block layer and a few drivers that dig into struct request
internals.

This patch adds a new req_flags_t rq_flags field to struct request for
them, and thus dramatically shrinks the number of common requests.  It
also removes the unfortunate situation where we have to fit the fields
from the same enum into 32 bits for struct bio and 64 bits for
struct request.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Shaun Tancheff <shaun.tancheff@seagate.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
38 files changed:
Documentation/block/biodoc.txt
block/blk-core.c
block/blk-exec.c
block/blk-flush.c
block/blk-map.c
block/blk-merge.c
block/blk-mq.c
block/blk-tag.c
block/blk.h
block/elevator.c
drivers/block/pktcdvd.c
drivers/ide/ide-atapi.c
drivers/ide/ide-cd.c
drivers/ide/ide-cd.h
drivers/ide/ide-cd_ioctl.c
drivers/ide/ide-io.c
drivers/ide/ide-pm.c
drivers/md/dm-rq.c
drivers/memstick/core/ms_block.c
drivers/memstick/core/mspro_block.c
drivers/mmc/card/block.c
drivers/mmc/card/queue.c
drivers/nvme/host/pci.c
drivers/scsi/device_handler/scsi_dh_alua.c
drivers/scsi/device_handler/scsi_dh_emc.c
drivers/scsi/device_handler/scsi_dh_hp_sw.c
drivers/scsi/device_handler/scsi_dh_rdac.c
drivers/scsi/osd/osd_initiator.c
drivers/scsi/osst.c
drivers/scsi/scsi_error.c
drivers/scsi/scsi_lib.c
drivers/scsi/sd.c
drivers/scsi/sd_zbc.c
drivers/scsi/st.c
drivers/scsi/ufs/ufshcd.c
include/linux/blk_types.h
include/linux/blkdev.h
include/scsi/scsi_device.h