Merge tag 'for-4.19/block-20180812' of git://git.kernel.dk/linux-block
Pull block updates from Jens Axboe: "First pull request for this merge window, there will also be a followup request with some stragglers. This pull request contains: - Fix for a thundering heard issue in the wbt block code (Anchal Agarwal) - A few NVMe pull requests: * Improved tracepoints (Keith) * Larger inline data support for RDMA (Steve Wise) * RDMA setup/teardown fixes (Sagi) * Effects log suppor for NVMe target (Chaitanya Kulkarni) * Buffered IO suppor for NVMe target (Chaitanya Kulkarni) * TP4004 (ANA) support (Christoph) * Various NVMe fixes - Block io-latency controller support. Much needed support for properly containing block devices. (Josef) - Series improving how we handle sense information on the stack (Kees) - Lightnvm fixes and updates/improvements (Mathias/Javier et al) - Zoned device support for null_blk (Matias) - AIX partition fixes (Mauricio Faria de Oliveira) - DIF checksum code made generic (Max Gurtovoy) - Add support for discard in iostats (Michael Callahan / Tejun) - Set of updates for BFQ (Paolo) - Removal of async write support for bsg (Christoph) - Bio page dirtying and clone fixups (Christoph) - Set of bcache fix/changes (via Coly) - Series improving blk-mq queue setup/teardown speed (Ming) - Series improving merging performance on blk-mq (Ming) - Lots of other fixes and cleanups from a slew of folks" * tag 'for-4.19/block-20180812' of git://git.kernel.dk/linux-block: (190 commits) blkcg: Make blkg_root_lookup() work for queues in bypass mode bcache: fix error setting writeback_rate through sysfs interface null_blk: add lock drop/acquire annotation Blk-throttle: reduce tail io latency when iops limit is enforced block: paride: pd: mark expected switch fall-throughs block: Ensure that a request queue is dissociated from the cgroup controller block: Introduce blk_exit_queue() blkcg: Introduce blkg_root_lookup() block: Remove two superfluous #include directives blk-mq: count the hctx as active before allocating tag block: bvec_nr_vecs() returns value for wrong slab bcache: trivial - remove tailing backslash in macro BTREE_FLAG bcache: make the pr_err statement used for ENOENT only in sysfs_attatch section bcache: set max writeback rate when I/O request is idle bcache: add code comments for bset.c bcache: fix mistaken comments in request.c bcache: fix mistaken code comments in bcache.h bcache: add a comment in super.c bcache: avoid unncessary cache prefetch bch_btree_node_get() bcache: display rate debug parameters to 0 when writeback is not running ...
此提交包含在:
@@ -339,7 +339,6 @@ static int read_cap16(struct scsi_device *sdev, struct llun_info *lli)
|
||||
struct scsi_sense_hdr sshdr;
|
||||
u8 *cmd_buf = NULL;
|
||||
u8 *scsi_cmd = NULL;
|
||||
u8 *sense_buf = NULL;
|
||||
int rc = 0;
|
||||
int result = 0;
|
||||
int retry_cnt = 0;
|
||||
@@ -348,8 +347,7 @@ static int read_cap16(struct scsi_device *sdev, struct llun_info *lli)
|
||||
retry:
|
||||
cmd_buf = kzalloc(CMD_BUFSIZE, GFP_KERNEL);
|
||||
scsi_cmd = kzalloc(MAX_COMMAND_SIZE, GFP_KERNEL);
|
||||
sense_buf = kzalloc(SCSI_SENSE_BUFFERSIZE, GFP_KERNEL);
|
||||
if (unlikely(!cmd_buf || !scsi_cmd || !sense_buf)) {
|
||||
if (unlikely(!cmd_buf || !scsi_cmd)) {
|
||||
rc = -ENOMEM;
|
||||
goto out;
|
||||
}
|
||||
@@ -364,7 +362,7 @@ retry:
|
||||
/* Drop the ioctl read semahpore across lengthy call */
|
||||
up_read(&cfg->ioctl_rwsem);
|
||||
result = scsi_execute(sdev, scsi_cmd, DMA_FROM_DEVICE, cmd_buf,
|
||||
CMD_BUFSIZE, sense_buf, &sshdr, to, CMD_RETRIES,
|
||||
CMD_BUFSIZE, NULL, &sshdr, to, CMD_RETRIES,
|
||||
0, 0, NULL);
|
||||
down_read(&cfg->ioctl_rwsem);
|
||||
rc = check_state(cfg);
|
||||
@@ -395,7 +393,6 @@ retry:
|
||||
if (retry_cnt++ < 1) {
|
||||
kfree(cmd_buf);
|
||||
kfree(scsi_cmd);
|
||||
kfree(sense_buf);
|
||||
goto retry;
|
||||
}
|
||||
}
|
||||
@@ -426,7 +423,6 @@ retry:
|
||||
out:
|
||||
kfree(cmd_buf);
|
||||
kfree(scsi_cmd);
|
||||
kfree(sense_buf);
|
||||
|
||||
dev_dbg(dev, "%s: maxlba=%lld blklen=%d rc=%d\n",
|
||||
__func__, gli->max_lba, gli->blk_len, rc);
|
||||
|
@@ -426,7 +426,6 @@ static int write_same16(struct scsi_device *sdev,
|
||||
{
|
||||
u8 *cmd_buf = NULL;
|
||||
u8 *scsi_cmd = NULL;
|
||||
u8 *sense_buf = NULL;
|
||||
int rc = 0;
|
||||
int result = 0;
|
||||
u64 offset = lba;
|
||||
@@ -440,8 +439,7 @@ static int write_same16(struct scsi_device *sdev,
|
||||
|
||||
cmd_buf = kzalloc(CMD_BUFSIZE, GFP_KERNEL);
|
||||
scsi_cmd = kzalloc(MAX_COMMAND_SIZE, GFP_KERNEL);
|
||||
sense_buf = kzalloc(SCSI_SENSE_BUFFERSIZE, GFP_KERNEL);
|
||||
if (unlikely(!cmd_buf || !scsi_cmd || !sense_buf)) {
|
||||
if (unlikely(!cmd_buf || !scsi_cmd)) {
|
||||
rc = -ENOMEM;
|
||||
goto out;
|
||||
}
|
||||
@@ -457,7 +455,7 @@ static int write_same16(struct scsi_device *sdev,
|
||||
/* Drop the ioctl read semahpore across lengthy call */
|
||||
up_read(&cfg->ioctl_rwsem);
|
||||
result = scsi_execute(sdev, scsi_cmd, DMA_TO_DEVICE, cmd_buf,
|
||||
CMD_BUFSIZE, sense_buf, NULL, to,
|
||||
CMD_BUFSIZE, NULL, NULL, to,
|
||||
CMD_RETRIES, 0, 0, NULL);
|
||||
down_read(&cfg->ioctl_rwsem);
|
||||
rc = check_state(cfg);
|
||||
@@ -482,7 +480,6 @@ static int write_same16(struct scsi_device *sdev,
|
||||
out:
|
||||
kfree(cmd_buf);
|
||||
kfree(scsi_cmd);
|
||||
kfree(sense_buf);
|
||||
dev_dbg(dev, "%s: returning rc=%d\n", __func__, rc);
|
||||
return rc;
|
||||
}
|
||||
|
新增問題並參考
封鎖使用者