Messages in this thread | | | Date | Tue, 24 Nov 2020 20:20:40 +0000 | From | Matthew Wilcox <> | Subject | Re: [PATCH 01/17] mm/highmem: Lift memcpy_[to|from]_page and memset_page to core |
| |
On Tue, Nov 24, 2020 at 11:21:13AM -0800, Ira Weiny wrote: > On Tue, Nov 24, 2020 at 02:19:41PM +0000, Matthew Wilcox wrote: > > On Mon, Nov 23, 2020 at 10:07:39PM -0800, ira.weiny@intel.com wrote: > > > +static inline void memzero_page(struct page *page, size_t offset, size_t len) > > > +{ > > > + memset_page(page, 0, offset, len); > > > +} > > > > This is a less-capable zero_user_segments(). > > Actually it is a duplicate of zero_user()... Sorry I did not notice those... > :-( > > Why are they called '_user_'?
git knows ...
commit 01f2705daf5a36208e69d7cf95db9c330f843af6 Author: Nate Diller <nate.diller@gmail.com> Date: Wed May 9 02:35:07 2007 -0700
fs: convert core functions to zero_user_page
It's very common for file systems to need to zero part or all of a page, the simplist way is just to use kmap_atomic() and memset(). There's actually a library function in include/linux/highmem.h that does exactly that, but it's confusingly named memclear_highpage_flush(), which is descriptive of *how* it does the work rather than what the *purpose* is. So this patchset renames the function to zero_user_page(), and calls it from the various places that currently open code it.
This first patch introduces the new function call, and converts all the core kernel callsites, both the open-coded ones and the old memclear_highpage_flush() ones. Following this patch is a series of conversions for each file system individually, per AKPM, and finally a patch deprecating the old call. The diffstat below shows the entire patchset.
| |