e driver would want to describe
in its host template. That's why I asked.
We can add it if somebody wants it but it's a bit of a chicken and egg
problem. Anyway. Minor issue.
--
Martin K. Petersen Oracle Linux Engineering
--
To unsubscribe from this list: send the line "un
>>>>> "Bart" == Bart Van Assche writes:
Bart> Modify scsi_find_tag() and scsi_host_find_tag() such that these
Bart> fuctions can translate a tag generated by blk_mq_unique_tag().
Looks good to me.
Reviewed-by: Martin K. Petersen
--
Martin K. Petersen
gt; shost-> can_queue. In other words, the total queue depth per host
Bart> is (number of hardware queues) * (shost->can_queue).
I suggest you emphasize that assumption in the header file.
Also: What about the host template?
Reviewed-by: Martin K. Petersen
--
Martin K. Petersen O
structure, and since passing the hctx pointer directly to the
Bart> queuecommand callback function would require modification of all
Bart> SCSI LLDs, add a function to the block layer that allows to query
Bart> the hardware context index.
I agree with consolidating the two functions.
ields in the DIF data buffer
Sagi> (usually this is offloaded).
READ CAPACITY returns a block size of 512 even though the blocks on disk
are 520. That's the beauty of it.
At the command level all transfers are expressed in number of blocks,
not bytes. The application will see an N x 512 byt
he future?
I have cleaned this up in my integrity patch set since we already have
the flag to determine whether to transfer PI or not.
I'll get those patches out today.
--
Martin K. Petersen Oracle Linux Engineering
--
To unsubscribe from this list: send the line "unsubscribe
the easiest fix is to just pass a scsi_data_buffer to
Christoph> scsi_transfer_length(), and let the caller use
Christoph> scsi_in/scsi_out to find the right one.
I'm perfectly OK with that approach.
--
Martin K. Petersen Oracle Linux Engineering
--
To unsubscribe from this list: send
>>>>> "Mike" == Mike Christie writes:
Mike> It would be nice to just have one function to call and it just do
Mike> the right thing for the drivers.
But what is the right thing when there are buffers for both directions?
--
Martin K. Petersen Oracle Linu
->length;
I guess that depends on the context the wrapper is called in. I think
iscsi is the only place where there's a distinction thanks to bidi.
Looks like there are several places where that's done. In that case I
wonder if we should have explicit scsi_in_transfer_length() and
s
ig
Debugged-by: Mike Christie
Signed-off-by: Martin K. Petersen
diff --git a/include/scsi/scsi_cmnd.h b/include/scsi/scsi_cmnd.h
index 42ed789ebafc..e0ae71098144 100644
--- a/include/scsi/scsi_cmnd.h
+++ b/include/scsi/scsi_cmnd.h
@@ -318,7 +318,7 @@ static inline void set_driver_byte(stru
>>>>> "Mike" == Mike Christie writes:
>> + unsigned int xfer_len = blk_rq_bytes(scmd->request);
Mike> Can you do bidi and dif/dix?
Nope.
--
Martin K. Petersen Oracle Linux Engineering
--
To unsubscribe from this list: send the line "unsubscri
i> will compute the total transfer length from the scsi command data
Sagi> length and protection attributes.
Looks good!
--
Martin K. Petersen Oracle Linux Engineering
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majo
ntially
nab> the same tradeoff of recalculating the transport's cmd->data_length
nab> from values within the CDB w/ prot=1.
nab> MKP, WDYT..?
My general feeling is that once sbc on the target sees {rd,wr}protect >
0 we're in the territory where you should start sepa
>>>>> "Or" == Or Gerlitz writes:
Or> Just to make sure, by 3.16 you also mean 3.15.y, right?
Yes.
--
Martin K. Petersen Oracle Linux Engineering
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to ma
_len = blk_rq_bytes(scmd->request);
if (scsi_prot_flagged(SCSI_PROT_TRANSFER_PI))
xfer_len += (xfer_len >> ilog2(scsi_prot_interval(scmd))) * 8;
return xfer_len;
}
--
Martin K. Petersen Oracle Linux Engineering
--
To unsubscribe from this list: send the line "uns
meant to be the thing driver's should key off of
to adjust transfer length. But I'm also happy to provide a unsigned int
scsi_transfer_length(struct scsi_cmnd *) thingy that returns the right
byte count. Just bear in mind that the host-facing DIX transfer length
may be different.
--
break;
+ case 4096:
+ data_len += (data_len >> 12) * 8;
+ break;
+ default:
+ data_len +=
+ (data_len >> ilog2(sc
airly trivial but
do require some changes to mptNsas, lpfc and qla2xxx.
--
Martin K. Petersen Oracle Linux Engineering
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
18 matches
Mail list logo