All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] mm/highmem: VM_BUG_ON() if offset + len > PAGE_SIZE
@ 2022-04-26 19:30 Fabio M. De Francesco
  2022-04-26 19:34 ` Andrew Morton
  0 siblings, 1 reply; 5+ messages in thread
From: Fabio M. De Francesco @ 2022-04-26 19:30 UTC (permalink / raw)
  To: Andrew Morton, Ira Weiny, Catalin Marinas,
	Matthew Wilcox (Oracle), Peter Collingbourne, linux-kernel
  Cc: Fabio M. De Francesco

Add VM_BUG_ON() bounds checking to make sure that, if "offset + len>
PAGE_SIZE", memset() does not corrupt data in adjacent pages.

Cc: Ira Weiny <ira.weiny@intel.com>
Signed-off-by: Fabio M. De Francesco <fmdefrancesco@gmail.com>
---
 include/linux/highmem.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/linux/highmem.h b/include/linux/highmem.h
index 6b2d59e025c5..d54dbaae9a5e 100644
--- a/include/linux/highmem.h
+++ b/include/linux/highmem.h
@@ -380,6 +380,8 @@ static inline void memcpy_to_page(struct page *page, size_t offset,
 static inline void memzero_page(struct page *page, size_t offset, size_t len)
 {
 	char *addr = kmap_local_page(page);
+
+	VM_BUG_ON(offset + len > PAGE_SIZE);
 	memset(addr + offset, 0, len);
 	flush_dcache_page(page);
 	kunmap_local(addr);
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-04-26 21:10 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-04-26 19:30 [PATCH] mm/highmem: VM_BUG_ON() if offset + len > PAGE_SIZE Fabio M. De Francesco
2022-04-26 19:34 ` Andrew Morton
2022-04-26 20:19   ` Fabio M. De Francesco
2022-04-26 20:48     ` Andrew Morton
2022-04-26 21:10       ` Fabio M. De Francesco

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.