diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-10 12:26:55 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-04-10 12:26:55 -0400 |
commit | dd76a786af1f09e9122e150d30156e094e2a94b4 (patch) | |
tree | 97ff3d0d45d8df3294d3ec913eec728eb1c2ab57 /drivers/scsi | |
parent | e7990d45bb88c2f0565b5ee4c32eefe81653faff (diff) | |
parent | 360f92c2443073143467a0088daffec96a17910b (diff) |
Merge branch 'for-linus' of git://git.kernel.dk/linux-block
Pull block layer fixes from Jens Axboe:
"A small collection of fixes that should go in before -rc1. The pull
request contains:
- A two patch fix for a regression with block enabled tagging caused
by a commit in the initial pull request. One patch is from Martin
and ensures that SCSI doesn't truncate 64-bit block flags, the
other one is from me and prevents us from double using struct
request queuelist for both completion and busy tags. This caused
anything from a boot crash for some, to crashes under load.
- A blk-mq fix for a potential soft stall when hot unplugging CPUs
with busy IO.
- percpu_counter fix is listed in here, that caused a suspend issue
with virtio-blk due to percpu counters having an inconsistent state
during CPU removal. Andrew sent this in separately a few days ago,
but it's here. JFYI.
- A few fixes for block integrity from Martin.
- A ratelimit fix for loop from Mike Galbraith, to avoid spewing too
much in error cases"
* 'for-linus' of git://git.kernel.dk/linux-block:
block: fix regression with block enabled tagging
scsi: Make sure cmd_flags are 64-bit
block: Ensure we only enable integrity metadata for reads and writes
block: Fix integrity verification
block: Fix for_each_bvec()
drivers/block/loop.c: ratelimit error messages
blk-mq: fix potential stall during CPU unplug with IO pending
percpu_counter: fix bad counter state during suspend
Diffstat (limited to 'drivers/scsi')
-rw-r--r-- | drivers/scsi/scsi_lib.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/scsi/scsi_lib.c b/drivers/scsi/scsi_lib.c index 5681c05ac506..65a123d9c676 100644 --- a/drivers/scsi/scsi_lib.c +++ b/drivers/scsi/scsi_lib.c | |||
@@ -184,7 +184,7 @@ void scsi_queue_insert(struct scsi_cmnd *cmd, int reason) | |||
184 | */ | 184 | */ |
185 | int scsi_execute(struct scsi_device *sdev, const unsigned char *cmd, | 185 | int scsi_execute(struct scsi_device *sdev, const unsigned char *cmd, |
186 | int data_direction, void *buffer, unsigned bufflen, | 186 | int data_direction, void *buffer, unsigned bufflen, |
187 | unsigned char *sense, int timeout, int retries, int flags, | 187 | unsigned char *sense, int timeout, int retries, u64 flags, |
188 | int *resid) | 188 | int *resid) |
189 | { | 189 | { |
190 | struct request *req; | 190 | struct request *req; |
@@ -235,7 +235,7 @@ EXPORT_SYMBOL(scsi_execute); | |||
235 | int scsi_execute_req_flags(struct scsi_device *sdev, const unsigned char *cmd, | 235 | int scsi_execute_req_flags(struct scsi_device *sdev, const unsigned char *cmd, |
236 | int data_direction, void *buffer, unsigned bufflen, | 236 | int data_direction, void *buffer, unsigned bufflen, |
237 | struct scsi_sense_hdr *sshdr, int timeout, int retries, | 237 | struct scsi_sense_hdr *sshdr, int timeout, int retries, |
238 | int *resid, int flags) | 238 | int *resid, u64 flags) |
239 | { | 239 | { |
240 | char *sense = NULL; | 240 | char *sense = NULL; |
241 | int result; | 241 | int result; |