From f480b75bd7e216f7a59543c3471129180bf5dd05 Mon Sep 17 00:00:00 2001 From: Roland Dreier Date: Tue, 22 Nov 2011 13:51:33 -0800 Subject: [PATCH] --- yaml --- r: 276475 b: refs/heads/master c: 9b5cd7f37e1e018432111333e2a67f78ba41edfe h: refs/heads/master i: 276473: bfaf6c14f0072b926fe4646c515f5cc01dcd79f9 276471: 38112c3327f9e8cf3a7d94b4ca9d3a750a397a83 v: v3 --- [refs] | 2 +- trunk/drivers/target/target_core_transport.c | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index aa2c55fda020..1eb10c568e26 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 410f670202f0f13cdac8459b9c3effeeead135d1 +refs/heads/master: 9b5cd7f37e1e018432111333e2a67f78ba41edfe diff --git a/trunk/drivers/target/target_core_transport.c b/trunk/drivers/target/target_core_transport.c index 1b760a0b1109..9faaaae78b0a 100644 --- a/trunk/drivers/target/target_core_transport.c +++ b/trunk/drivers/target/target_core_transport.c @@ -2144,10 +2144,15 @@ static inline u32 transport_get_sectors_6( /* * Everything else assume TYPE_DISK Sector CDB location. - * Use 8-bit sector value. + * Use 8-bit sector value. SBC-3 says: + * + * A TRANSFER LENGTH field set to zero specifies that 256 + * logical blocks shall be written. Any other value + * specifies the number of logical blocks that shall be + * written. */ type_disk: - return (u32)cdb[4]; + return cdb[4] ? : 256; } static inline u32 transport_get_sectors_10(