async_xor: check src_offs is not NULL before updating it
authorXiao Ni <xni@redhat.com>
Fri, 28 May 2021 06:16:38 +0000 (14:16 +0800)
committerSong Liu <song@kernel.org>
Fri, 11 Jun 2021 02:40:14 +0000 (19:40 -0700)
commit9be148e408df7d361ec5afd6299b7736ff3928b0
treee6b21a9198837ae3e9d8a48adbc1f6126a9522d6
parent41fe8d088e96472f63164e213de44ec77be69478
async_xor: check src_offs is not NULL before updating it

When PAGE_SIZE is greater than 4kB, multiple stripes may share the same
page. Thus, src_offs is added to async_xor_offs() with array of offsets.
However, async_xor() passes NULL src_offs to async_xor_offs(). In such
case, src_offs should not be updated. Add a check before the update.

Fixes: ceaf2966ab08(async_xor: increase src_offs when dropping destination page)
Cc: stable@vger.kernel.org # v5.10+
Reported-by: Oleksandr Shchirskyi <oleksandr.shchirskyi@linux.intel.com>
Tested-by: Oleksandr Shchirskyi <oleksandr.shchirskyi@intel.com>
Signed-off-by: Xiao Ni <xni@redhat.com>
Signed-off-by: Song Liu <song@kernel.org>
crypto/async_tx/async_xor.c