On Thu, 24 Feb 2005, Doug Ledford wrote: > Don't use cmd->request->nr_hw_segments as it may not be initialized > (SG_IO in particular bypasses anything that initializes this and just > uses scsi_do_req to insert a scsi_request directly on the head of the > queue) >
I opted to begin to use the nr_hw_segments as a guide following the following thread on linux-scsi: http://marc.theaimsgroup.com/?l=linux-scsi&m=107940832718154&w=2 and had inquired about its validaty in usage again in September of last year: http://marc.theaimsgroup.com/?l=linux-scsi&m=109580376921554&w=2 seems not all callers (properly?) prepare a request, still... > and a bogus value here can trip up the checks to make sure that > the number of segments will fit in the queue ring buffer, resulting in > commands that are never completed. > Yes, this is an unfortunate side-effect. Not wanting to labor on the reasoning behind its usage (the first marc referenced-link goes into some details), the changes queued up in: http://marc.theaimsgroup.com/?l=linux-scsi&m=110754501726445&w=2 negate any dependencies on nr_hw_segments. > Fix up several issues with PCI DMA mapping and failure to check return > values on the mappings. > Yes, thanks for catching this. > Make the check for space in the ring buffer happen after the DMA mapping > is done since any checks done before the mapping has taken place are > bogus. > I'm hoping once the tree opens up after 2.6.11 is released to begin making further additions to the qla2xxx driver with the experimentaly patched driver as a base. I'll queue-up your changes for my next set of patches. Thanks again, Andrew Vasquez - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html