• Sasikumar Chandrasekaran's avatar
    scsi: megaraid_sas: SAS3.5 Generic Megaraid Controllers Fast Path for RAID 1/10 Writes · 69c337c0
    Sasikumar Chandrasekaran authored
    To improve RAID 1/10 Write performance, OS drivers need to issue the
    required Write IOs as Fast Path IOs (after the appropriate checks
    allowing Fast Path to be used) to the appropriate physical drives
    (translated from the OS logical IO) and wait for all Write IOs to complete.
    
    Design: A write IO on RAID volume will be examined if it can be sent in
    Fast Path based on IO size and starting LBA and ending LBA falling on to
    a Physical Drive boundary. If the underlying RAID volume is a RAID 1/10,
    driver issues two fast path write IOs one for each corresponding physical
    drive after computing the corresponding start LBA for each physical drive.
    Both write IOs will have the same payload and are posted to HW such that
    replies land in the same reply queue.
    
    If there are no resources available for sending two IOs, driver will send
    the original IO from SCSI layer to RAID volume through the Firmware.
    
    Based on PCI bandwidth and write payload, every second this feature is
    enabled/disabled.
    
    When both IOs are completed by HW, the resources will be released
    and SCSI IO completion handler will be called.
    Signed-off-by: default avatarSasikumar Chandrasekaran <sasikumar.pc@broadcom.com>
    Reviewed-by: default avatarTomas Henzl <thenzl@redhat.com>
    Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
    69c337c0
megaraid_sas.h 55.2 KB