diff options
author | Maurizio Lombardi <[email protected]> | 2022-07-15 14:50:13 +0200 |
---|---|---|
committer | Andrew Morton <[email protected]> | 2022-09-26 12:14:34 -0700 |
commit | dac22531bbd4af2426c4e29e05594415ccfa365d (patch) | |
tree | a72a209c803887d244c57b5c72d20a4d33b3419d /lib/mpi/mpi-sub-ui.c | |
parent | 70427f6e9ecfc8c5f977b21dd9f846b3bda02500 (diff) |
mm: prevent page_frag_alloc() from corrupting the memory
A number of drivers call page_frag_alloc() with a fragment's size >
PAGE_SIZE.
In low memory conditions, __page_frag_cache_refill() may fail the order
3 cache allocation and fall back to order 0; In this case, the cache
will be smaller than the fragment, causing memory corruptions.
Prevent this from happening by checking if the newly allocated cache is
large enough for the fragment; if not, the allocation will fail and
page_frag_alloc() will return NULL.
Link: https://lkml.kernel.org/r/[email protected]
Fixes: b63ae8ca096d ("mm/net: Rename and move page fragment handling from net/ to mm/")
Signed-off-by: Maurizio Lombardi <[email protected]>
Reviewed-by: Alexander Duyck <[email protected]>
Cc: Chen Lin <[email protected]>
Cc: Jakub Kicinski <[email protected]>
Cc: <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Diffstat (limited to 'lib/mpi/mpi-sub-ui.c')
0 files changed, 0 insertions, 0 deletions