net: ipa: separate memory validation from initialization
authorAlex Elder <elder@linaro.org>
Wed, 9 Jun 2021 22:34:56 +0000 (17:34 -0500)
committerDavid S. Miller <davem@davemloft.net>
Wed, 9 Jun 2021 22:59:33 +0000 (15:59 -0700)
commit98334d2a3ba4c79947650710ac06434e25824a35
tree72e366010bdeb8ca17ff75a7b5732dd7513a8040
parent0300df2d9d249c3dd8e0ad1b7dd5b7da1b8d0e37
net: ipa: separate memory validation from initialization

Currently, memory regions are validated in the loop that initializes
them.  Instead, validate them separately.

Rename ipa_mem_valid() to be ipa_mem_valid_one().  Define a *new*
function named ipa_mem_valid() that performs validation of the array
of memory regions provided.  This function calls ipa_mem_valid_one()
for each region in turn.

Skip validation for any "empty" region descriptors, which have zero
size and are not preceded by any canary values.  Issue a warning for
such descriptors if the offset is non-zero.

Signed-off-by: Alex Elder <elder@linaro.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ipa/ipa_mem.c