• Dan Williams's avatar
    ioat3: fix p-disabled q-continuation · cd78809f
    Dan Williams authored
    When continuing a pq calculation the driver needs 3 extra sources.  The
    driver can perform a 3 source calculation with a single descriptor, but
    needs an extended descriptor to process up to 8 sources in one
    operation.  However, in the p-disabled case only one extra source is
    needed.  When continuing a p-disabled operation there are occasions
    (i.e. 0 < src_cnt % 8 < 3) where the tail operation does not need an
    extended descriptor.  Properly account for this fact otherwise invalid
    'dmacount' values will be written to hardware usually causing the
    channel to halt with 'invalid descriptor' errors.
    
    Cc: <stable@kernel.org>
    Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
    cd78809f
dma_v3.c 35.5 KB